home *** CD-ROM | disk | FTP | other *** search
/ TOS Silver 2000 / TOS Silver 2000.iso / Anwendun / B_E_M / BEM.ASC < prev    next >
Encoding:
Text File  |  1997-09-29  |  92.3 KB  |  2,783 lines

  1.                 Anleitung für den BavariaEventManager
  2.  
  3.                                BEM_111
  4.  
  5.                               BEM V1.11
  6.                           23. November 1996
  7.  
  8.                                  von
  9.  
  10.                             Michael Pieper
  11.  
  12.                      MausNet: Michael Pieper @ A
  13.  
  14.  
  15.  
  16. Inhaltsverzeichnis
  17. ==================
  18.  
  19.  1  Einführung
  20.     1.1  Nutzungsbedingungen
  21.     1.2  Sourcecode
  22.     1.3  Vorhandene Dateien
  23.     1.4  Konzept des Programms
  24.     1.5  Begriffe
  25.  
  26.  2  Installation
  27.     2.1  Installation als Accessory
  28.     2.2  Installation unter SingleTOS
  29.     2.3  Installation unter Multitasking
  30.     2.4  Installation von CD
  31.     2.5  Resource-Datei
  32.     2.6  Hinweis für versierte Benutzer
  33.  
  34.  3  Benutzung
  35.     3.1  Definition von Ereignissen
  36.          3.1.1  Der Ereigniseditor
  37.          3.1.2  Neues Ereignis
  38.          3.1.3  Ereignis editieren
  39.          3.1.4  Ereignis löschen
  40.          3.1.5  TIMER
  41.          3.1.6  PROGRAMM
  42.          3.1.7  TASTATUR
  43.          3.1.8  MAUS
  44.          3.1.9  DEVICE
  45.     3.2  Die Ereignisdateien
  46.          3.2.1  TIMER.EVT
  47.          3.2.2  PROGRAMM.EVT
  48.          3.2.3  KEYBOARD.EVT
  49.          3.2.4  BUTTON.EVT
  50.          3.2.5  SS.EVT
  51.     3.3  Definition von Aktionen
  52.          3.3.1  BEM_EDIT.PRG
  53.          3.3.2  AKTION.DAT
  54.          3.3.3  EXEC
  55.          3.3.4  RUN
  56.          3.3.5  WAIT
  57.          3.3.6  PATH
  58.          3.3.7  SEND
  59.          3.3.8  SENDFILE
  60.          3.3.9  SS
  61.          3.3.10  CLEAR
  62.          3.3.11  QUIT
  63.          3.3.12  SAVE_INF
  64.          3.3.13  GONG
  65.          3.3.14  ALERT
  66.          3.3.15  INFO
  67.          3.3.16  DISABLE
  68.          3.3.17  DELAY
  69.          3.3.18  VOLUME
  70.          3.3.19  PNICE
  71.          3.3.20  DIM
  72.          3.3.21  SET
  73.          3.3.22  FSELECT
  74.          3.3.23  MIDI-COM
  75.          3.3.24  EXIST
  76.          3.3.25  IF
  77.          3.3.26  PROTOKOLL
  78.          3.3.27  AKTIV
  79.          3.3.28  VA-START
  80.          3.3.29  WINDOW
  81.          3.3.30  GOTO
  82.          3.3.31  SKIP
  83.          3.3.32  Variablen
  84.     3.4  Definition von Feiertagen
  85.     3.5  Systemkonfiguration
  86.          3.5.1  EVENTMAN.INF
  87.          3.5.2  BEM_EDIT.INF
  88.     3.6  Der BavariaEventManager in Aktion
  89.          3.6.1  Registrier-Fenster
  90.          3.6.2  BavariaEventStatus
  91.          3.6.3  BavariaButtonDialog
  92.          3.6.4  BavariaKalender
  93.          3.6.5  BavariaInformation
  94.  
  95.      4. Neuerungen ab der Version 1.11a
  96.          4.1 EVENTMAN.INF
  97.          4.2 Programmstart und VA_START
  98.          4.3 Neuer Befehl: PLAY-KEY
  99.          4.4 Neuer Befehl: TOP
  100.          4.5 Neuer Befehl: AV-SENDKEY
  101.          4.6 Neuer Befehl: EXIT
  102.          4.7 Neuer Befehl: KILL
  103.          4.8 Mögliche Definitionen der <Tastatureingabe>
  104.  
  105.     
  106. Anhang
  107. ======
  108.  
  109.  A  Bekannte Probleme
  110.     A.1  FPATCH2.PRG
  111.     A.2  CAT auf dem Falcon mit TOS 4.04
  112.     A.3  Gestartetes Programm findet seine RSC-Datei nicht
  113.     A.4  Einsatz des BavariaEventManagers als ACC
  114.     A.5  Programmereignis auf Singletasking-Betriebssystemen
  115.     A.6  Midi-Com Einbindung
  116.  
  117.  B  Beispiele für den Einsatz
  118.  
  119.  C  Definierte Feiertage
  120.  
  121.  D  Haftungsausschluß und Warnung
  122.  
  123.  E  Autor
  124.  
  125.  
  126.  
  127. 1  Einführung
  128. *************
  129.  
  130. Der BavariaEventManager soll Ihnen behilflich sein, wenn sie auf
  131. Ihrem Rechner regelmäßige Aufgaben zu erledigen haben, oder wenn ein
  132. bestimmtes Ereignis zu einer Aktion führen soll.
  133.  
  134.  
  135. 1.1  Nutzungsbedingungen
  136. ========================
  137.  
  138. Der BavariaEventManager ist seit der Version 1.11 Freeware. Er darf
  139. frei benutzt, weitergegeben und kopiert werden.
  140.  
  141. Spenden sind trotzdem willkommen, da in dem Programm mittlerweile
  142. eine Menge Arbeit steckt.
  143.  
  144. Spenden können auf folgendes Konto überwiesen werden:
  145.  
  146.     Konto-Nr.: 2830 155 719
  147.     BLZ: 720 20 240
  148.     HYPO-Bank Gersthofen
  149.  
  150.  
  151. 1.2  Sourcecode
  152. ===============
  153.  
  154. Der Sourcecode des BavariaEventManager ist seit der Version 1.11 für
  155. einen Kostenbeitrag von 20,- DM erhältlich. Für registrierte User der
  156. Version 1.10 und älter ist er kostenlos.
  157.  
  158. Der Bezug ist auf verschiedenen Wegen möglich:
  159.  
  160.    ∙ Über eine geschlossene Gruppe BEM in der Maus LL.
  161.      Dazu ist es notwendig, sich in der Maus LL als User einzutragen.
  162.      Dann schreiben Sie eine Mail an Michael Pieper @ LL oder den
  163.      Gruppenchef. Sobald das Geld hier angekommen ist, wird die
  164.      Gruppe für den User freigeschaltet und der Sourcecode kann aus
  165.      dem GPT BEM gesaugt werden.
  166.  
  167.    ∙ UUE-codiert über das Internet
  168.      Der Code kann direkt bei michael@ghf.augusta.de bestellt werden.
  169.  
  170.    ∙ Auf Diskette per Snail-Mail
  171.      Dazu schicken Sie mir bitte eine DD- oder HD-Diskette mit einem
  172.      Adfrarüschla (adressierten und frankierten Rückumschlag).
  173.  
  174. Ein Versand als PM über das MausNet ist wegen der Größe des Codes
  175. nicht möglich!
  176.  
  177.  
  178. 1.3  Vorhandene Dateien
  179. =======================
  180.  
  181. Folgende Dateien gehören zum BavariaEventManager:
  182.  
  183.  EVENTMAN.PRG  Das Programm
  184.  EVENTMAN.RSC  Die Resource-Datei. Zum normalen Arbeiten wird sie
  185.                nicht benötigt. Wenn die Optik des BEM verändert
  186.                werden soll, kann sie geändert werden.
  187.  BEM_EDIT.PRG  Das Programm zum Editieren der Ereignisse
  188.  BEM_EDIT.RSC  Das Resourcefile zum Editor
  189.  EVENTMAN.DAT\ Der Systemordner für den BavariaEventManager
  190.                 EVENTMAN.INF  Hier werden diverse Infos gesichert.
  191.                               Die Datei muß mit "Sichern" erzeugt
  192.                               werden.
  193.                 BEM_EDIT.INF  Hier werden Infos des Editors
  194.                               gesichert.
  195.                 BUTTON.EVT    Die Mausknopfereignisse
  196.                 SS.EVT        Die Schnittstellenereignisse
  197.                 KEYBOARD.EVT  Die Tastaturereignisse
  198.                 PROGRAMM.EVT  Die Programmereignisse
  199.                 TIMER.EVT     Die Zeitereignisse
  200.                 AKTION.DAT    Die Definition der Aktionen
  201.                 FEIERTAG.DAT  Die Definition der Feiertage
  202.                 ????????.PRO  Die Protokolldatei. Der Dateiname kann
  203.                               von Ihnen vorgegeben werden.
  204.  
  205.  
  206. 1.4  Konzept des Programms
  207. ==========================
  208.  
  209.    ∙ Das Programm ist so aufgebaut, daß über diverse Dateien mehrere
  210.      Ereignisse definiert werden können. In einer weiteren Datei sind
  211.      dann die auszuführenden Aktionen zu definieren.
  212.  
  213.    ∙ Das Programm wurde so gestaltet, daß es in keinem Interrupt
  214.      hängt, sondern als ganz normales Programm gestartet werden kann.
  215.  
  216.    ∙ Das Programm kann seine vollständige Leistungsfähigkeit nur beim
  217.      Einsatz unter einem Multitasking-Betriebssystem entfalten.
  218.      Dennoch kann es auch als Accessory installiert werden. Aller-
  219.      dings ist die Benutzung dann systembedingt etwas eingeschränkt.
  220.  
  221.  
  222. 1.5  Begriffe
  223. =============
  224.  
  225.  BavariaEventManager  Viele Leute fragen sich, wieso das Programm
  226.                       denn Bavaria... heißt. Das hat drei einfache
  227.                       Gründe:
  228.  
  229.                         1. EventManager hörte sich IMHO langweilig an
  230.                            :-)
  231.  
  232.                         2. Der Entwickler, also ich, kommt aus
  233.                            Bayern.
  234.  
  235.                         3. Die Feiertagsberechnung kann alle Feier-
  236.                            tage. Und es dürfte ja bekannt sein, daß
  237.                            wir hier in Augsburg (Bayern) die meisten
  238.                            Feiertage in der Republik haben.
  239.  
  240.  Ereignis             Ein Ereignis tritt dann auf, wenn ein defi-
  241.                       nierter Zustand innerhalb des Systems auftritt.
  242.                       Als Ereignisse werden Tastendrücke, Mausklicks,
  243.                       Programmstarts bzw. -enden, Textempfang über
  244.                       Schnittstellen und Zeitdefinitionen verwendet.
  245.                       Einem Ereignis wird eine Aktion zugeordnet.
  246.  
  247.  Aktion               Eine Aktion wird ausgelöst, wenn ein defi-
  248.                       niertes Ereignis aufgetreten ist. Diese Aktion
  249.                       hat einen frei wählbaren Namen und kann, ähn-
  250.                       lich einer Batchdatei, mehrere Befehle
  251.                       enthalten.
  252.  
  253.  Befehle              Eine Aktion besteht aus einem oder mehreren
  254.                       Befehlen. Ein Befehl kann z.B. Programme star-
  255.                       ten, Texte an eine Schnittstelle schicken oder
  256.                       einen Gong ausgeben.
  257.  
  258.  
  259.  
  260. 2  Installation
  261. ***************
  262.  
  263. Derzeit gibt es noch kein Installationsprogramm. Dennoch ist die
  264. Installation denkbar einfach.
  265.  
  266. Folgende Schritte sind generell durchzuführen:
  267.  
  268.    ∙ Es sind alle Dateien auf ein beliebiges Verzeichnis auf der
  269.      Festplatte zu kopieren. Die benötigte Verzeichnisstruktur ist
  270.      unter "Vorhandene Dateien" beschrieben.
  271.  
  272.    ∙ Die *.EVT-Dateien und die Datei AKTION.DAT können gelöscht wer-
  273.      den, oder man kann sie über den Editor oder einen Texteditor
  274.      seinen Ansprüchen anpassen.
  275.  
  276.    ∙ Wenn Sie Feiertage definieren wollen, die nicht im Programm
  277.      enthalten sind, müssen diese in der Datei FEIERTAG.DAT vorhanden
  278.      sein. Diese Datei muß im Ordner EVENTMAN.DAT enthalten sein.
  279.  
  280.    ∙ Rufen Sie nun das Programm EVENTMAN.PRG auf.
  281.  
  282.    ∙ Stellen Sie die gewünschten Fensterpositionen ein und wählen Sie
  283.      den Menüpunkt Datei > Sichern, dadurch wird eine Datei
  284.      EVENTMAN.INF erzeugt.
  285.  
  286.    ∙ Je nach Einsatz geht es nun weiter mit:
  287.  
  288.         - Installation als Accessory
  289.         - Installation unter SingleTOS
  290.         - Installation unter Multitasking
  291.         - Installation von CD
  292.  
  293.  
  294. Resource-Datei
  295.  
  296. Hinweis für versierte Benutzer
  297.  
  298.  
  299. 2.1  Installation als Accessory
  300. ===============================
  301.  
  302. Um das Programm als ACC zu benutzen, müssen Sie nun nur noch die
  303. Datei EVENTMAN.PRG sowie EVENTMAN.INF auf Ihr Bootlaufwerk, auf dem
  304. Ihre sonstigen Accessories gesichert sind, kopieren.
  305.  
  306. Ändern Sie nun noch den Dateinamen EVENTMAN.PRG in EVENTMAN.ACC.
  307.  
  308. Nun ist Ihr System vorbereitet, beim nächsten Booten den Bavaria-
  309. EventManager zu laden. Sie finden den Programmeintrag auf dem Desktop
  310. unter Desk > EventManager.
  311.  
  312. Der Pfad, in dem Ihr EVENTMAN.DAT-Ordner liegt, ist in der
  313. EVENTMAN.INF- Datei gesichert. Sollten sie diesen Ordner verschieben,
  314. müssen Sie den Pfad mit einem Texteditor anpassen oder die Prozedur
  315. unter "Installation" wiederholen.
  316.  
  317. Das Programm erkennt, wo beim Start die EVENTMAN.INF-Datei gefunden
  318. wurde und speichert eventuelle Änderungen dort wieder ab.
  319.  
  320. Unter Mag!X(C) und MultiTOS kann eine Environmentvariable eingetragen
  321. werden, die den EVENTMAN.DAT-Ordner anzeigt. Somit kann auch die
  322. Info- Datei (EVENTMAN.INF) im zentralen Ordner abgelegt werden.
  323.  
  324. unter Mag!C:
  325.  
  326.     Datei: MAGIX.INF
  327.     Zeile: #_ENV BAVARIA-SYSTEM=C:\BEM\EVENTMAN.DAT
  328.  
  329. unter MultiTOS:
  330.  
  331.     Datei: GEM.CNF
  332.     Zeile: setenv BAVARIA-SYSTEM=C:\BEM\EVENTMAN.DAT
  333.  
  334.  
  335. 2.2  Installation unter SingleTOS
  336. =================================
  337.  
  338. Für die Verwendung unter SingleTOS sind nun alle Tätigkeiten
  339. erledigt. Sie können den BavariaEventManager jetzt einfach per
  340. Doppelklick starten.
  341.  
  342.  
  343. 2.3  Installation unter Multitasking
  344. ====================================
  345.  
  346. Unter einen Multitaskingbetriebssystem (MultiTOS, Mag!C) ist der
  347. Einsatz des Programms als Hintergrundprogramm sinnvoll. Will man
  348. einen automatischen Start erzeugen, so kann die Datei EVENTMAN.PRG in
  349. einen eventuell vorhandenen Autostartordner kopiert werden. (Achtung!
  350. NICHT den AUTO-Ordner unter MultiTOS verwenden!)
  351.  
  352. Der Pfad, in dem Ihr EVENTMAN.DAT-Ordner liegt, muß über eine En-
  353. vironmentvariable festgelegt werden. Unter Mag!X(C) und MultiTOS kann
  354. eine Environmentvariable eingetragen werden, die den EVENTMAN.DAT-
  355. Ordner anzeigt. Somit kann auch die Info-Datei (EVENTMAN.INF) im
  356. zentralen Ordner abgelegt werden.
  357.  
  358. unter Mag!C:
  359.  
  360.     Datei: MAGIX.INF
  361.     Zeile: #_ENV BAVARIA-SYSTEM=C:\BEM\EVENTMAN.DAT
  362.  
  363. unter MultiTOS:
  364.  
  365.     Datei: GEM.CNF
  366.     Zeile: setenv BAVARIA-SYSTEM=C:\BEM\EVENTMAN.DAT
  367.  
  368.  
  369. 2.4  Installation von CD
  370. ========================
  371.  
  372. Das Programm ist nicht von CD lauffähig, da die Ereignisdateien
  373. editierbar sein müssen. Kopieren Sie daher den kompletten Ordner auf
  374. Ihre Festplatte und installieren das Programm entsprechend den
  375. Installationsanweisungen für Ihre Umgebung.
  376.  
  377.  
  378. 2.5  Resource-Datei
  379. ===================
  380.  
  381. Wenn das Aussehen der Fenster geändert werden soll, muß die Datei
  382. EVENTMAN.RSC in das Startverzeichnis des EVENTMAN.PRG oder .ACC
  383. gelegt werden.
  384.  
  385. Die Datei kann mit einem normalen RCS bearbeitet werden. Die Struktur
  386. der Resource darf dabei jedoch nicht verändert werden, d.h. die
  387. Elemente dürfen verschoben, vergrößert oder verkleinert, der Text
  388. darf verändert, aber nicht die Reihenfolge geändert oder Elemente
  389. gelöscht werden.
  390.  
  391. Ein Arbeiten mit einer in der Struktur geänderten Resource hat mit
  392. großer Wahrscheinlichkeit einen Rechnerabsturz zur Folge.
  393.  
  394. Die gängigen RCS lassen einen Schutz vor Veränderung der Struktur zu.
  395.  
  396.  
  397. 2.6  Hinweis für versierte Benutzer
  398. ===================================
  399.  
  400. Das Programm sucht seine *.EVT-Dateien sowie die EVENTMAN.INF-Datei
  401. in dem Ordner, der in der Enviromentvariablen "BAVARIA-SYSTEM="
  402. angegeben ist. Daher ist es möglich, den Ordner an eine beliebige
  403. Stelle auszulagern.
  404.  
  405. Der Editor wird im gleichen Pfad wie der EVENTMAN.DAT-Ordner gesucht.
  406.  
  407. Beispiel: BAVARIA-SYSTEM=F:\UTILITY\BEM\DATEN.BEM
  408.  
  409. Somit werden alle *.EVT-Dateien mit F:\UTILITY\BEM\DATEN.BEM\*.EVT
  410. gesucht. Der Editor allerdings wird eine Ebene höher gesucht:
  411. F:\UTILITY\BEM\BEM_EDIT.PRG.
  412.  
  413. Wird der Editor beim Startversuch über das Menü nicht gefunden,
  414. erscheint eine Fehlermeldung. Dort hat man die Möglichkeit, sich mit
  415. dem Knopf "FSELECT" einen Fileselektor anzeigen zu lassen und das
  416. BEM_EDIT.PRG zu suchen.
  417.  
  418. Der Pfad bleibt während des Programmlaufs vom BavariaEventManager
  419. erhalten. Soll er dauerhaft gesichert werden, muß der Menüpunkt Datei
  420. > Konfiguration sichern angewählt werden.
  421.  
  422. Wichtig!
  423. Beim Start als ACC unter SingleTOS kann keine Environmentvariable
  424. abgefragt werden. Daher muß beim ACC-Einsatz die Datei EVENTMAN.INF
  425. im gleichen Ordner liegen wie EVENTMAN.ACC
  426.  
  427.  
  428.  
  429. 3  Benutzung
  430. ************
  431.  
  432. Um das Programm nun sinnvoll einsetzen zu können, müssen die ent-
  433. sprechenden Ereignisse und Aktionen definiert werden.
  434.  
  435. Das kann mit einem ganz einfachen Texteditor geschehen, oder es kann
  436. der BEM_EDIT verwendet werden.
  437.  
  438. Sie müssen sowohl Ereignisse als auch Aktionen definieren.
  439.  
  440.  
  441. 3.1  Definition von Ereignissen
  442. ===============================
  443.  
  444. Generell können alle Ereignisse auch mit einem normalen Texteditor
  445. definiert werden. Es ist dann lediglich exakt auf die Datei-
  446. beschreibung zu achten.
  447.  
  448. Es wird allerdings der Editor BEM_EDIT.PRG empfohlen, da dieser
  449. Fehleingaben überprüfen kann und solche gar nicht erst zuläßt.
  450.  
  451.  
  452. 3.1.1  Der Ereigniseditor
  453. -------------------------
  454.  
  455. Nach dem Starten von BEM_EDIT.PRG versucht das Programm die bereits
  456. definierten Ereignisdateien zu finden. Dazu geht der Editor fol-
  457. gendermaßen vor:
  458.  
  459.    ∙ Ist die Environmentvariable "BAVARIA-SYSTEM" gesetzt, so werden
  460.      in diesem Verzeichnis die Ereignisdateien gesucht.
  461.  
  462.    ∙ Ist dies nicht der Fall, dann wird angenommen, daß in der glei-
  463.      chen Ebene, in der der BEM_EDITor liegt, auch ein Ordner namens
  464.      EVENTMAN.DAT existiert, der die entsprechenden Dateien enthält.
  465.  
  466.    ∙ Nach dem Programmstart erscheint ein Fenster, in dem man die
  467.      einzelnen Ereignisse sowie die zugehörigen Aktionen definieren
  468.      kann.
  469.  
  470.    ∙ Klickt man auf ein Icon, kommt man in den entsprechenden Editor.
  471.      Die Bedienung ist in allen Editoren gleich gehalten.
  472.  
  473.      Man kann die diversen Editoren auch über die Menüleiste oder
  474.      durch Shortcuts erreichen.
  475.  
  476.  
  477.    +---------------------+----------+------------+----------------+
  478.    | Editor \ Aufruf     | Shortcut | Icon       | Datei          |
  479.    +---------------------+----------+------------+----------------+
  480.    | Timerereignis       | CTRL-T   | Uhr        | TIMER.EVT      |
  481.    | Programmereignis    | CTRL-P   | 3,5"-Disk  | PROGRAMM.EVT   |
  482.    | Keybordereignis     | CTRL-K   | Tastatur   | KEYBOARD.EVT   |
  483.    | Mausereignis        | CTRL-M   | Maus       | BUTTON.EVT     |
  484.    | Deviceereignis      | CTRL-D   | Kabel      | SS.EVT         |
  485.    | ---                 |          |            |                |
  486.    | Feiertage           | CTRL-F   | Sonne      | FEIERTAG.DAT   |
  487.    | ---                 |          |            |                |
  488.    | Aktionen            | CTRL-A   | Filmklappe | AKTION.DAT     |
  489.    | ---                 |          |            |                |
  490.    | Systemkonfiguration |          | Werkzeug   | EVENTMAN.INF + |
  491.    |                     |          |            | BEM_EDIT.INF   |
  492.    +---------------------+----------+------------+----------------+
  493.  
  494.                   (Tabelle 1: Bedienung des Editors)
  495.  
  496.  
  497.    ∙ Jeder Editor besteht aus 5 Zeilen Ereignisübersicht. Sind mehr
  498.      Ereignisse definiert, kann man mit den Scrollbalken das Fenster
  499.      verschieben, so daß man das gesuchte Ereignis wieder findet.
  500.  
  501.    ∙ Im unteren Teil der Editoren stehen Eingabefelder zur Verfügung,
  502.      mit denen man neue Ereignisse definieren oder bestehende edi-
  503.      tieren kann.
  504.  
  505.  
  506. 3.1.2  Neues Ereignis
  507. ---------------------
  508.  
  509. Um ein Ereignis neu zu definieren, tragen Sie einfach die gewünschten
  510. Werte in die Eingabefelder ein oder wählen die entsprechenden Ein-
  511. träge per Popup aus. Ist der Eintrag komplett, können Sie ihn mit dem
  512. Knopf "Neu" in die Liste aufnehmen.
  513.  
  514. Haben Sie kein Ereignis selektiert, dann ist der Knopf "Neu" der
  515. Standardknopf, der mit der RETURN-Taste erreicht werden kann.
  516.  
  517.  
  518. 3.1.3  Ereignis editieren
  519. -------------------------
  520.  
  521. Um ein Ereignis zu editieren, klicken Sie das Ereignis an. Es wird
  522. dann selektiert und die Werte werden in die Eingabefelder übertragen.
  523.  
  524. Gleichzeitig wechselt der Defaultknopf von "Neu" auf "Edit".
  525.  
  526. Hier können nun die Daten geändert werden und mit "Edit" in das
  527. selektierte Feld übernommen werden. Sie können so auch leicht ähn-
  528. liche Ereignisse definieren. Einfach das ähnliche Ereignis anklicken,
  529. ändern und mit "Neu" als neues Ereignis definieren.
  530.  
  531.  
  532. 3.1.4  Ereignis löschen
  533. -----------------------
  534.  
  535. Um ein Ereignis zu löschen, wählt man das Ereignis aus und klickt auf
  536. "Löschen".
  537.  
  538. Hat man versehentlich ein Ereignis gelöscht, kann man es nun mit
  539. "Neu" wieder eintragen, da mit dem Selektieren die Eingabefelder ja
  540. neu beschrieben wurden.
  541.  
  542.  
  543. 3.1.5  TIMER
  544. ------------
  545.  
  546. Mit diesem Editorteil lassen sich Ereignisse definieren, die zeitab-
  547. hängig gesteuert werden. Das jeweils nächste Timerereignis erscheint
  548. oben im Statusfenster.
  549.  
  550.    ∙ Hierbei muß in den Feldern "Datum" und "Zeit" angegeben werden,
  551.      wann die Aktion das erste Mal gestartet werden soll.
  552.  
  553.    ∙ Im Feld "Wiederholung alle:" wird eingetragen, in welchem
  554.      Rhythmus die Aktion wiederholt werden soll. Mit einem Popupmenü
  555.      läßt sich festlegen, ob die Aktion alle x Jahre, alle x Monate,
  556.      alle x Wochen, alle x Tage, alle x Stunden oder alle x Minuten
  557.      aufgerufen wird.
  558.  
  559.    ∙ Für x kann man in einem Editfeld noch einen Multiplikator ein-
  560.      tragen, so daß man auch Werte wie "alle 27 Minuten" einstellen
  561.      kann.
  562.  
  563.    ∙ Wird bei "Feiertag" und "Werktags" ein Multiplikator angegeben,
  564.      so werden zum Weiterzählen jeweils immer nur die "Arbeitstage"
  565.      bzw. die "freien Tage" gezählt. Die Angabe 2 als Multiplikator
  566.      bewirkt somit, daß das Ereignis immer z.B. am Samstag auftritt,
  567.      solange bis ein Feiertag innerhalb der Woche ist, denn dieser
  568.      wird ebenfalls als "freier Tag" gezählt.
  569.  
  570.      Als Werktag zählen die Tage Montag-Freitag. Feiertage sind alle
  571.      in der FEIERTAG.DAT eingetragenen Feiertage sowie Samstag und
  572.      Sonntag. Sollen an solchen Tagen Anrufe getätigt werden, sollte
  573.      man die FEIERTAG.DAT auf die bundeseinheitlichen gesetzlichen
  574.      Feiertage sowie Heiligabend und Silvester setzen. Auf diese
  575.      Weise sind Werk- und Feiertage Telekom-gerecht definiert.
  576.  
  577.    ∙ Für die Auswahl "einmalig" ist kein Multiplikator zugelassen.
  578.  
  579.    ∙ Der Button "Nachholen" bewirkt folgendes: Wenn eine Aktion
  580.      stattgefunden hätte, während der Rechner ausgeschaltet war,
  581.      wird diese so oft wiederholt, wie sie stattgefunden hätte, wenn
  582.      der Rechner eingeschaltet gewesen wäre. Ist der Knopf nicht ak-
  583.      tiviert, wird die Aktion generell genau einmal ausgeführt.
  584.  
  585.    ∙ Eine Aktion wird nur dann ausgeführt, wenn sie innerhalb des
  586.      "Gültig"-Bereichs liegt. Der Gültig-Bereich wird immer in Stun-
  587.      den angegeben. Ein Zeitereignis findet somit nur dann statt,
  588.      wenn die aktuelle Uhrzeit maximal "Gültig" Stunden nach der de-
  589.      finierten Zeit liegt.
  590.  
  591.      Wird als "Gültig" 0 angegeben, so wird mindestens 1 Minute als
  592.      Gültigkeitsdauer angenommen.
  593.  
  594. Beispiel: Timerereignis Neu
  595.  
  596.  Datum: 08.07.1995        Aktionsname:  Geburtstag
  597.   Zeit: 00:00:00    Wiederholung alle:  01 Jahr(e)   Gültig: 24 Std.
  598.  
  599.  Datei AKTION.DAT:
  600.  [Geburtstag]
  601.      GONG
  602.      ALERT 3 "Michael hat Geburtstag! Unbedingt anrufen!"
  603.  
  604. Diese Aktion warnt jedes Jahr davor, daß man einen bestimmten
  605. Geburtstag vergißt, allerdings nur an genau dem eingestellten Tag (24
  606. Std von 0 Uhr an).
  607.  
  608.  
  609. 3.1.6  PROGRAMM
  610. ---------------
  611.  
  612. Mit diesem Editorteil lassen sich Ereignisse definieren, die abhängig
  613. von einem Programmstart/-ende sind. Der BavariaEventManager überprüft
  614. regelmäßig mit "appl_find", ob definierte Programme im Speicher ge-
  615. startet wurden. Ist dies der Fall, wird die Start-Aktion ausgeführt.
  616. War ein Programm bei der letzten Abfrage noch im Speicher und ist nun
  617. entfernt worden, wird die End-Aktion ausgeführt".
  618.  
  619.    ∙ Es können beliebig viele Ereignisse definiert werden. Dazu sind
  620.      die Felder "Start-Aktion" und "End-Aktion" auszufüllen, sowie im
  621.      Feld/Button "Programmname" der maximal 8-Stellige Programmname
  622.      einzutragen. Die Extension (.TOS oder .PRG etc.) muß weggelassen
  623.      werden.
  624.  
  625.    ∙ Mit einem Klick auf "Programmname" kann man das Programm selber
  626.      mit einem Fileselektor auswählen.
  627.  
  628. Beispiel: Programmereignis Neu
  629.  
  630.  Programmname:  RUFUS         Start-Aktion:  DFUE_Start
  631.                                 End-Aktion:  DFUE_Ende
  632.  
  633.  Datei AKTION.DAT:
  634.  [DFUE_Start]
  635.      SS MIDI: AUS
  636.      SS MODEM2: AUS
  637.      SS SERIAL1: AUS
  638.      SS SERIAL2: AUS
  639.  
  640.  [DFUE_Ende]
  641.      SS MIDI: EIN
  642.      SS MODEM2: EIN 38400
  643.      SS SERIAL1: EIN 19200
  644.      SS SERIAL2: EIN
  645.  
  646. Wird das Programm RUFUS vom BavariaEventManager im Speicher erkannt,
  647. werden alle Schnittstellenzugriffe gesperrt, damit sich die beiden
  648. Programme nicht gegenseitig Zeichen wegnehmen.
  649.  
  650. Wird RUFUS wieder verlassen, wird die Schnittstellenüberwachung mit
  651. den oben definierten Aktionen wieder eingeschaltet. Die Schnitt-
  652. stellen MODEM2 und SERIAL1 werden auf definierte Baudraten gesetzt.
  653.  
  654.  
  655. 3.1.7  TASTATUR
  656. ---------------
  657.  
  658. Mit diesem Editorteil kann man den BavariaEventManager auf Tastatur-
  659. kürzel vorbereiten. Diese Tastaturkürzel werden ausgewertet, sobald
  660. der BEM das aktive Programm ist, d.h., daß der BEM unter MultiTOS ein
  661. Häkchen im Desk- Menü haben muß. Unter Mag!X(C) und unter SingleTos
  662. muß ein BEM-Fenster als oberstes Fenster aktiv sein.
  663.  
  664.    ∙ Es können beliebig viele Ereignisse definiert werden. Dazu ist
  665.      das Editorfeld "Aktionsname" und "Scan/ASCII-code" auszufüllen.
  666.  
  667.    ∙ Da aber nicht jeder eine Liste der Scan- oder ASCII-Codes zur
  668.      Hand hat, kann auch auf den Knopf "Scan/ASCII-code" geklickt
  669.      werden. Dadurch wird von der danach gedrückten Tastenkombination
  670.      der ASCII- und Scancode ermittelt und in das Editfeld
  671.      eingetragen.
  672.  
  673.      Es erscheint zur Information eine Dialogbox, die nur mit einer
  674.      Tastenkombination beendet werden kann.
  675.  
  676.    ∙ Nun läßt sich noch festlegen, welcher Code beim späteren Aus-
  677.      werten beachtet werden soll, ASCII-, Scancode oder beide.
  678.  
  679.      Das ist wichtig, wenn man z.B. die Taste mit der Ziffer '5'
  680.      definieren will. Diese Taste existiert nämlich zweimal: Einmal
  681.      über den Buchstabentasten und ein weiteres mal auf dem
  682.      Ziffernblock.
  683.  
  684.      Wenn man nun nur den ASCII-Code auswertet, dann ist es später
  685.      egal, welche '5' man betätigt. Die Aktion wird immer ausgeführt.
  686.  
  687.      Wählt man nur den Scan-code, so kann man unterschiedliche Funk-
  688.      tionen auf die Taste '5' legen, je nachdem, ob die '5' des
  689.      Nummernblocks oder die andere '5' gedrückt wurde.
  690.  
  691.      Schaltet man beide (Scan und ASCII) Codeauswertungen ein, so
  692.      kann man auch deutsche und englische Tastaturen unterscheiden,
  693.      da z.B. die Taste 'Z' auf einer deutschen Tastatur einen anderen
  694.      Scancode liefert als auf einer englischen, da die Taste ja
  695.      physikalisch einen anderen Platz einnimmt.
  696.  
  697. Beispiel: Tastaturereignis Neu
  698.  
  699.  Scan/ASCII-Code:  1F/13
  700.  Aktion:  Sichern_inf
  701.  
  702.  Datei AKTION.DAT:
  703.  [Sichern_inf]
  704.      SAVE_INF
  705.      ALERT 1 "Die EVENTMAN.INF wurde gesichert!"
  706.  
  707. Es wird nur der ASCII-Code ausgewertet. Dadurch wird beim Eintrag mit
  708. "Neu" oder "Edit" der Scancode mit "-" überschrieben.
  709.  
  710. Der ASCII-Code 13 (hex.) entspricht CTRL-S. Drückt man nun, während
  711. der BavariaEventManager aktiv ist, diese Tastenkombination, dann wird
  712. die INF- Datei gesichert und eine ALERT-Box bestätigt das.
  713.  
  714.  
  715. 3.1.8  MAUS
  716. -----------
  717.  
  718. Mit diesem Editorteil läßt sich ein Fenster konfigurieren, das beim
  719. BavariaEventManager als BavariaButtonDialog anwählbar ist und 16
  720. Tasten beinhaltet. Diese Tasten sind 4-fach belegt (normal, mit
  721. SHIFT, mit CONTROL und mit ALTERNATE).
  722.  
  723.    ∙ Es können keine Ereignisse mit "Neu" definiert werden, weil
  724.      nicht mehr als 64 Tasten zugelassen sind. Stattdessen ist die
  725.      gewünschte Taste anzuwählen, die Werte einzutragen und dann mit
  726.      "Edit" zu übernehmen. Bei der Nummer steht zur Erkennung noch
  727.      ein Buchstabe, so daß man erkennen kann, mit welcher Zusatztaste
  728.      die Funktion ausgelöst wird.
  729.  
  730.    ∙ Man kann die Beschriftung der Tasten wählen (bis zu 13 Zeichen
  731.      ohne Leerzeichen) und die Aktion, die ausgeführt werden soll,
  732.      wenn später diese Taste betätigt wird. Die Aktion muß in der
  733.      Datei AKTION.DAT definiert sein.
  734.  
  735. Beispiel: Mausereignis editieren Knopf Nr. 7:
  736.  
  737.  Beschriftung: POLLEN
  738.  Aktion:    Poll_MS2
  739.  
  740.  Datei AKTION.DAT:
  741.  [Poll_MS2]
  742.     DISABLE 7
  743.     PATH F:\CAT
  744.     RUN F:\CAT\CAT.PRG -iq
  745.     PATH F:\RUFUS
  746.     SS AUX: AUS
  747.     RUN F:\RUFUS\RUFUS.APP MAUS.RUF
  748.     SS AUX: EIN 0
  749.     DELAY 2
  750.     SS AUX: SET 19200
  751.     PATH F:\CAT
  752.     RUN F:\CAT\CAT.PRG -oq
  753.     ENABLE 7
  754.  
  755. Wird nun auf den Button "POLLEN" geklickt, so wird die Aktion
  756. "Poll_MS2" aufgerufen. Diese besteht aus 12 Kommandos, die hinter-
  757. einander abgearbeitet werden.
  758.  
  759. Zuerst wird der Knopf deselektiert, dann das Outfile erstellt. Die
  760. Schnittstellenüberwachung wird abgeschaltet, Rufus zum MausTausch
  761. aufgerufen, danach DTR für 2 Sekunden abgeschaltet, dann die Schnitt-
  762. stellenüberwachung wieder eingeschaltet, das Outfile einsortiert und
  763. am Ende der Knopf wieder freigeschaltet.
  764.  
  765.  
  766. 3.1.9  DEVICE
  767. -------------
  768.  
  769. Mit diesem Editorteil stellt man die Schnittstellenüberwachung ein.
  770. Dabei werden die eingeschalteten Schnittstellen auf die ankommenden
  771. Zeichen überwacht und wenn eine Übereinstimmung auftaucht, wird das
  772. entsprechende Kommando ausgeführt. Der Status der überwachten
  773. Schnittstellen erscheint im Statusfenster.
  774.  
  775.    ∙ Die Schnittstellengeschwindigkeit entspricht der, die im Kon-
  776.      trollfeld eingestellt wurde. Sollen Strings überwacht werden,
  777.      die ein CR beinhalten, ist als CR-Ersatz die Zeichenkombination
  778.      ^M zu verwenden. Wird also RING^MRING^M eingegeben, dann werden
  779.      zwei RING vom Modem abgewartet, bis das Ereignis ausgeführt
  780.      wird.
  781.  
  782.      Doch beachten Sie bitte, daß ein String längere Zeit auch im
  783.      Buffer stehen kann. Zwei Anrufe mit jeweils einem Klingeln
  784.      erzeugen genau den gleichen String wie zwei Klingelzeichen
  785.      hintereinander.
  786.  
  787.    ∙ Es können die Schnittstellen AUX:, MODEM1:, MODEM2:, SERIAL1:,
  788.      SERIAL2: und MIDI: überwacht werden. Eine Überwachung auf di-
  789.      verse Hardwareleitungen ist derzeit nicht eingebaut.
  790.  
  791.    ∙ Es können beliebig viele Ereignisse definiert werden. Dazu sind
  792.      die Felder "Zu prüfender String" und "Aktionsname" auszufüllen
  793.      sowie im Popup "Device" die entsprechende Schnittstelle
  794.      auszuwählen.
  795.  
  796. Beispiel Schnittstellenereignis Neu
  797.  
  798.  Device: AUX:
  799.  Zu prüfender String: RING^MRING^M
  800.  Aktionsname:  Anruf
  801.  
  802.  Datei AKTION.DAT:
  803.  [Anruf]
  804.     GONG
  805.     INFO  "->         ACHTUNG        <-| |Es hat geklingelt!"
  806.     SS AUX: AUS
  807.     SEND AUX: "ATA"
  808.     RUN LOGIN.PRG AUX:
  809.     CLEAR AUX:
  810.     SS AUX: EIN
  811.  
  812. Wird nun beim Ablauf des BavariaEventManagers erkannt, daß der String
  813. "RING^MRING^M" (zweimal RING mit einem Carriage Return danach) über
  814. die Schnittstelle AUX: empfangen wurde, so werden nacheinander ein
  815. Gong und ein Info-Text auf dem Bildschirm ausgegeben. Danach wird die
  816. Schnittstellenüberwachung abgeschaltet, der String "ATA" zum Modem
  817. geschickt und ein Programm gestartet, dem der Parameter "AUX:"
  818. übergeben wird. Wenn das Programm beendet wird, wird der Schnitt-
  819. stellenpuffer gelöscht und die Überwachung wieder aktiviert.
  820.  
  821.  
  822. 3.2  Die Ereignisdateien
  823. ========================
  824.  
  825. Alle Ereignisdateien haben die Endung *.EVT. In jeder Zeile steht ein
  826. Ereignis.
  827.  
  828.  
  829. 3.2.1  TIMER.EVT
  830. ----------------
  831.  
  832. Die Struktur jeder Zeile sieht folgendermaßen aus:
  833.  
  834. jjjjmmtthhmmss[{#|-h}] wi ken aktion
  835.  
  836.  jjjj    Jahr, wann das Ereignis erneut ausgeführt werden soll
  837.  mm      Monat
  838.  tt      Tag
  839.  hh      Stunde
  840.  mm      Minute
  841.  ss      Sekunde
  842.  
  843.  #       Dieser Eintrag wird nicht beachtet. Um ein Ereignis zu star-
  844.          ten, darf dieses Zeichen nicht vorhanden sein.
  845.  
  846.  -h      Dieser Eintrag gibt die Gültigkeitsdauer eines Ereignisses
  847.          in Stunden an. -2 bedeutet somit 2 Stunden Gültigkeitsdauer.
  848.  
  849.  wi      Wiederholung:
  850.           MI minütlich
  851.           ST stündlich
  852.           TA täglich
  853.           WO wöchentlich
  854.           JA jährlich
  855.           FT täglich nur an Wochenenden und Feiertagen
  856.           WT werktäglich. Nicht an Wochenenden und Feiertagen
  857.  
  858.          Steht direkt nach der Kennung ein '!', dann werden die
  859.          Ereignisse so oft nachgeholt, wie sie erfolgen sollten, als
  860.          der Computer ausgeschaltet war. Ist dieses Zeichen nicht
  861.          vorhanden, wird das Ereignis maximal einmal nachgeholt.
  862.  
  863.          Wird direkt vor die Kennung eine Ziffernfolge gestellt, gibt
  864.          das einen Multiplikator an. Beispiel: 20MI sind 20 Minuten.
  865.  
  866.          Weitere Kennungen, bei denen aber '!' und Multiplikator
  867.          nicht zugelassen sind:
  868.           EI einmalig. Nach Ausführung wird die Zeile mit '#'
  869.             markiert.
  870.  
  871.  ken     Kennummer, muß eindeutig sein. Der Inhalt ist egal. Es wird
  872.          empfohlen, das Eintragsdatum und die Eintragszeit zu
  873.          verwenden.
  874.  
  875.  aktion  Name der Aktion, die in der Datei AKTION.DAT ausgeführt
  876.          werden soll, wenn das Ereignis eintrifft.
  877.  
  878.  
  879.  
  880. Es dürfen keine Leerzeichen enthalten sein. Diese dienen der
  881. Trennung.
  882.  
  883.  
  884. 3.2.2  PROGRAMM.EVT
  885. -------------------
  886.  
  887. Die Struktur jeder Zeile sieht folgendermaßen aus:
  888.  
  889. prog start ende
  890.  
  891.  prog   Gibt an, welches Programm überwacht werden soll. Es genügt
  892.         die Angabe des Programmnamens ohne die Extension. Beispiel:
  893.         Für RUFUS.APP genügt "RUFUS"
  894.  
  895.  start  Diese Aktion soll ausgeführt werden, wenn das überwachte Pro-
  896.         gramm gestartet wurde.
  897.  
  898.  ende   Diese Aktion soll ausgeführt werden, wenn das überwachte Pro-
  899.         gramm beendet wurde.
  900.  
  901. Für start und ende muß immer eine Eingabe vorhanden sein. Wollen Sie
  902. keine Aktion starten, dann geben Sie eine unbekannte Aktion ein.
  903.  
  904. z.B.: "RUFUS - ruf-stop"
  905.  
  906. Der "-" wird nicht in der AKTION.DAT gefunden, somit auch nicht aus-
  907. geführt.
  908.  
  909. Es dürfen keine Leerzeichen enthalten sein. Diese dienen der
  910. Trennung.
  911.  
  912.  
  913. 3.2.3  KEYBOARD.EVT
  914. -------------------
  915.  
  916. Um diese Datei bearbeiten zu können, benötigen Sie eine Tabelle der
  917. ASCII- und SCAN-Codes auf Ihrem Rechner.
  918.  
  919. Die Struktur jeder Zeile sieht folgendermaßen aus:
  920.  
  921. scas aktion
  922.  
  923.  sc      Scancode, auf den geachtet werden muß. ("-" = nicht beach-
  924.          ten.)
  925.          Die Angabe erfolgt hexadezimal und immer zweistellig.
  926.  
  927.  as      ASCII-Code, auf den geachtet werden muß. ("-" = nicht be-
  928.          achten.)
  929.          Die Angabe erfolgt hexadezimal und immer zweistellig.
  930.          Um z.B. die Funktionstasten auszuwählen, ist der Scancode zu
  931.          verwenden.
  932.  
  933.  aktion  Name der Aktion, die in der Datei AKTION.DAT ausgeführt
  934.          werden soll.
  935.  
  936. Es dürfen keine Leerzeichen enthalten sein. Diese dienen der
  937. Trennung.
  938.  
  939.  
  940. 3.2.4  BUTTON.EVT
  941. -----------------
  942.  
  943. Die Struktur jeder Zeile sieht folgendermaßen aus:
  944.  
  945. nr beschr aktion
  946.  
  947.  nr      Die Nummer des Buttons, der abgefragt werden soll (1-64).
  948.          Die Buttons werden folgendermaßen gezählt:
  949.  
  950.                       1   2   3   4
  951.                       5   6   7   8
  952.                       9  10  11  12
  953.                      13  14  15  16
  954.  
  955.  beschr  Text, mit dem der Button beschriftet werden soll. Es werden
  956.          maximal 13 Zeichen angezeigt.
  957.  
  958.  aktion  Name der Aktion, die in der Datei AKTION.DAT ausgeführt
  959.          werden soll.
  960.  
  961. Es dürfen keine Leerzeichen enthalten sein. Diese dienen der
  962. Trennung.
  963.  
  964.  
  965. 3.2.5  SS.EVT
  966. -------------
  967.  
  968. Die Struktur jeder Zeile sieht folgendermaßen aus:
  969.  
  970. ss "text" aktion
  971.  
  972.  ss      Schnittstelle, die überwacht werden soll:
  973.  
  974.           AUX      Serielle Schnittstelle
  975.           MIDI     Midi-Port
  976.           MODEM1   Modem1
  977.           MODEM2   Modem2
  978.           SERIAL1  Serial1
  979.           SERIAL2  Serial2
  980.          Es können natürlich nur tatsächlich vorhandene Schnitt-
  981.          stellen überwacht werden. Daher sind die zulässigen Schnitt-
  982.          stellen vom Rechner abhängig. Beim Aufruf einer nicht
  983.          vorhandenen Schnittstelle wird der Fehlercode -15
  984.          zurückgegeben.
  985.  
  986.  "text"  Der Text, auf den gewartet werden soll, in " " eingeschlos-
  987.          sen. Ein Zeilenende darf in dem String nicht vorkommen.
  988.  
  989.  aktion  Name der Aktion, die in der Datei AKTION.DAT ausgeführt
  990.          werden soll.
  991.  
  992. Es dürfen keine Leerzeichen enthalten sein. Diese dienen der
  993. Trennung.
  994.  
  995.  
  996. 3.3  Definition von Aktionen
  997. ============================
  998.  
  999. Aktionen können in beliebigen Ereignissen definiert werden. Der dort
  1000. verwendete Name wird in der Datei AKTION.DAT unverändert gesucht.
  1001. Wird er gefunden, werden die entsprechenden Befehle ausgeführt.
  1002.  
  1003. Es gibt noch zusätzliche Aktionen, die automatisch ausgelöst werden:
  1004.  
  1005.  _Programmstart  wird ausgeführt, wenn der BavariaEventManager ge-
  1006.                  startet wird, dient also für eine erste Konfigu-
  1007.                  ration der Schnittstellen und ähnliches.
  1008.  
  1009.  _Programmende   wird vor Beendigung des BavariaEventManager
  1010.                  ausgeführt und sollte den Befehl "QUIT" enthalten.
  1011.  
  1012. Alle Aktionen können mit einem normalen Texteditor definiert werden.
  1013. Es ist darauf zu achten, daß die Datei AKTION.DAT korrekt aufgebaut
  1014. ist.
  1015.  
  1016.  
  1017. 3.3.1  BEM_EDIT.PRG
  1018. -------------------
  1019.  
  1020. Wird der Editor gestartet, kann man mit dem Icon BEM.Aktion in einen
  1021. frei wählbaren Texteditor gelangen. Ist noch kein Editor bekannt,
  1022. erhält man eine Fileselektorbox, um einen entsprechenden Editor
  1023. auszuwählen.
  1024.  
  1025. Solange man im BEM_EDIT.PRG verbleibt, ist dieser Editor dem Programm
  1026. bekannt. Um diesen Editor dauerhaft zu speichern, ist der Menüpunkt
  1027. Datei -> Konfiguration sichern anzuwählen. Dann wird der Editor in
  1028. der EVENTMAN.INF gesichert und steht in Zukunft direkt zur Verfügung.
  1029.  
  1030. Dem Editor wird beim Start der komplette Pfadname der AKTION.DAT-
  1031. Datei mitgegeben. Dadurch steht im Editor immer gleich die richtige
  1032. Datei zur Bearbeitung zur Verfügung.
  1033.  
  1034.  
  1035. 3.3.2  AKTION.DAT
  1036. -----------------
  1037.  
  1038. Die Datei AKTION.DAT beinhaltet alle definierten Aktionen und die zu-
  1039. gehörigen Kommandos.
  1040.  
  1041. Eine Aktion wird vom Aktionsnamen in eckigen Klammern eingeleitet.
  1042. [_Programmstart] beschreibt also den Beginn der Aktion _Pro-
  1043. grammstart. Sämtliche folgenden Zeilen bis zum nächsten Aktionsbeginn
  1044. oder dem Dateiende gehören zur gleichen Aktion.
  1045.  
  1046. Innerhalb einer Zeile ist jeweils ein Befehl einzugeben. Kommentar-
  1047. zeilen beginnen mit einem ";". Das Ende eines Befehls ist das Ende
  1048. der Zeile. Eine Befehlszeile darf maximal 254 Zeichen lang werden.
  1049.  
  1050. Das Format jeder Aktion sieht also folgendermaßen aus:
  1051.  
  1052.  [<aktion>]
  1053.  <bef> <par>
  1054.  <bef> <par>  beliebig viele Zeilen.
  1055.  
  1056. Zwischen den Angaben muß als Trennzeichen mindestens ein Leerzeichen
  1057. oder TAB vorhanden sein.
  1058.  
  1059.  <aktion> Name der Aktion, die ausgeführt wird. Es muß der gleiche
  1060.           Name verwendet werden, wie er in den *.EVT-Dateien defi-
  1061.           niert wurde.
  1062.  
  1063.  <bef>    Der Befehl, der ausgeführt werden soll. Nachfolgend eine
  1064.           übersicht der Befehle, die derzeit verstanden werden. Eine
  1065.           genauere Beschreibung steht in den nächsten Abschnitten.
  1066.  
  1067.            EXEC          Programm parallel ausführen
  1068.            RUN           Programm ausführen, auf Ende warten
  1069.            WAIT          Aktion unterbrechen, bis bestimmte
  1070.                          Bedingungen erfüllt sind
  1071.            PATH          Gesetzten Standardpfad ändern
  1072.            SEND          Senden von Text
  1073.            SENDFILE      Senden einer Datei
  1074.            SS            Schnittstelle konfigurieren
  1075.            CLEAR         Schnittstellenpuffer löschen
  1076.            QUIT          BavariaEventManager verlassen
  1077.            SAVE_INF      Speichert die INF-Datei
  1078.            GONG          Gibt einen Aufmerksamkeitsgong aus
  1079.            ALERT         Definiert eine Alertbox
  1080.            DISABLE       Sperrt einen Button
  1081.            ENABLE        Gibt einen Button frei
  1082.            DELAY         Wartet eine definierte Zeit
  1083.            VOLUME        Verändert die Lautstärke des Falcon
  1084.            PNICE         Verändert unter MultiTOS die Pro-
  1085.                          grammpriorität
  1086.            DIM           Definiert eine Variable.
  1087.            SET           Weist einer Variablen einen Wert zu
  1088.            FSELECT       Ruft eine Fileselectorbox auf
  1089.            MIDI-COM      Versendet Befehle an andere MIDI-COM-
  1090.                          Rechner
  1091.            EXIST         Prüft, ob eine Datei vorhanden ist
  1092.            IF ELSE ENDIF Dient zur Ablaufsteuerung der Aktionen
  1093.            PROTOKOLL     Schaltet das Protokollfile ein und aus
  1094.            AKTIV         Prüft, ob ein bestimmtes Programm läuft
  1095.            VA-START      Übergibt Parameter an ein laufendes Programm
  1096.            WINDOW        Öffnet oder schließt BEM-Fenster
  1097.            GOTO          Springt direkt eine andere Aktion an
  1098.            SKIP          Verschiebt eine Aktion um einen
  1099.                          definierbaren Zeitraum
  1100.            ;             Diese Zeile wird ignoriert. Hier können
  1101.                          Kommentare eingefügt oder nicht benötigte
  1102.                          Befehle deaktiviert werden.
  1103.  
  1104.  <par>    Die benötigten Parameter zu den Befehlen.
  1105.  
  1106.  
  1107. 3.3.3  EXEC
  1108. -----------
  1109.  
  1110. EXEC [{"TOS", "GEM"}] <prog> <par>]
  1111.  
  1112. EXEC führt unter Multitaskingbetriebssystemen das Programm <prog>
  1113. parallel aus. Das heißt, daß die Abarbeitung der Aktion mit dem
  1114. nächsten Befehl gleich fortgesetzt wird. Unter SingleTOS ist der
  1115. Befehl identisch mit "RUN".
  1116.  
  1117. Die Parameter <par> werden dem aufgerufenen Programm übergeben. Eine
  1118. übergabe von mehr als 127 Zeichen als Parameter ist derzeit nicht
  1119. möglich.
  1120.  
  1121. Beachten Sie aber bitte, daß Sie unter <prog> den kompletten Pfad des
  1122. Programms angeben, da ansonsten die Datei eventuell nicht gefunden
  1123. werden kann.
  1124.  
  1125. Unter Multitaskingsystemen kann man noch auswählen, ob das Programm
  1126. als "TOS-Programm", also mit VT52 gestartet werden soll, oder als
  1127. "GEM- Programm". Wird keiner der beiden Schalter angegeben, dann wird
  1128. überprüft, ob der Programmname auf die Maske "*.t*" paßt. Ist dies
  1129. der Fall, wird das Programm als TOS (also mit VT52) gestartet, an-
  1130. sonsten als GEM.
  1131.  
  1132.  Beispiel:
  1133.  
  1134.  [cat-ll]
  1135.     PATH F:\CAT
  1136.     EXEC F:\CAT\CAT.PRG CAT_LL.INF
  1137.     GONG
  1138.  
  1139. Der Gong wird bereits ausgegeben, wenn der Programmstart erfolgt ist.
  1140. Das Ende von CAT wird durch dieses Ereignis nun nicht mehr überwacht.
  1141.  
  1142.  
  1143. 3.3.4  RUN
  1144. ----------
  1145.  
  1146. RUN [{"TOS", "GEM"}] <prog> <par>]
  1147.  
  1148. RUN führt unter Multitaskingbetriebssystemen das Programm <prog> aus,
  1149. wartet aber im Gegensatz zu EXEC auf die Beendigung des Programms.
  1150. Erst danach wird die Ausführung des nächsten Befehls aktiviert.
  1151.  
  1152. Die Parameter <par> werden dem aufgerufenen Programm übergeben. Eine
  1153. übergabe von mehr als 127 Zeichen als Parameter ist derzeit nicht
  1154. möglich.
  1155.  
  1156. Beachten Sie aber bitte, daß sie unter <prog> den kompletten Pfad des
  1157. Programms angeben, da ansonsten die Datei eventuell nicht gefunden
  1158. werden kann.
  1159.  
  1160. Unter Multitaskingsystemen kann man noch auswählen, ob das Programm
  1161. als "TOS-Programm", also mit VT52 gestartet werden soll, oder als
  1162. "GEM- Programm". Wird keiner der beiden Schalter angegeben, dann wird
  1163. überprüft, ob der Programmname auf die Maske "*.t*" paßt. Ist dies
  1164. der Fall, wird das Programm als TOS (also mit VT52) gestartet, an-
  1165. sonsten als GEM.
  1166.  
  1167.  Beispiel:
  1168.  
  1169.  [cat-ll]
  1170.     PATH F:\CAT
  1171.     RUN F:\CAT\CAT.PRG CAT_LL.INF
  1172.     GONG
  1173.  
  1174. Der Gong wird erst ausgegeben, wenn der Benutzer CAT wieder beendet
  1175. hat. Die Aktion "cat-ll" wartet solange auf das Ende von CAT, bis
  1176. dieses auch eintritt und fährt erst danach mit der Aktion fort.
  1177.  
  1178.  
  1179. 3.3.5  WAIT
  1180. -----------
  1181.  
  1182. WAIT {"NO-AKTION", "NO-AKTIV" <programm>, "AKTIV" <programm>}
  1183.  
  1184. Mit dem Befehl WAIT kann man den BavariaEventManager veranlassen, die
  1185. Ausführung einer Aktion zu unterbrechen. Wann die Aktion wieder
  1186. fortgesetzt wird, wird mit den Parametern bestimmt.
  1187.  
  1188.    ∙ WAIT NO-AKTION
  1189.  
  1190.      Mit dem Parameter NO-AKTION wird die Ausführung der Aktion dann
  1191.      fortgesetzt, wenn keine weitere Aktion derzeit ausgeführt wird.
  1192.      Sobald die laufende Aktion beendet wird, wird die wartende
  1193.      Aktion fortgesetzt.
  1194.  
  1195.    ∙ WAIT NO-AKTIV <programm>
  1196.  
  1197.      Mit dem Parameter NO-AKTIV wird die Ausführung der Aktion
  1198.      solange unterbrochen, wie das angegebene Programm sich im
  1199.      Speicher des ATARI befindet. WAIT NO-AKTIV "cat" bewirkt, daß
  1200.      die Aktion erst fortgesetzt wird, wenn das Programm CAT sich
  1201.      nicht mehr im Speicher befindet. <programm> muß ohne Extension
  1202.      angegeben werden.
  1203.  
  1204.    ∙ WAIT AKTIV <programm>
  1205.  
  1206.      Mit dem Parameter AKTIV wird auf den Start eines Programms
  1207.      gewartet. (Wozu das nützlich ist, weiß ich derzeit noch nicht,
  1208.      aber es waren nur zwei Zeilen Programmcode mehr, also hab ich's
  1209.      mal reingemacht.)
  1210.  
  1211.  
  1212. 3.3.6  PATH
  1213. -----------
  1214.  
  1215. PATH <pfad>
  1216.  
  1217. Mit diesem Befehl setzen Sie den aktuellen Standardpfad Ihres Sys-
  1218. tems. Dies wird von vielen Programmen benötigt, wenn sie RSC-Dateien
  1219. nachladen wollen. Diese Programme suchen meistens im aktuellen Pfad.
  1220. Da aber eventuell ein anderer Pfad eingestellt sein kann, sollte vor
  1221. einem EXEC oder RUN ein PATH stehen.
  1222.  
  1223. Als Ergebnis liefert PATH den Wert "TRUE", wenn die Umstellung er-
  1224. folgreich war. Bei numerischen Variablen ist das Ergebnis 0. Im
  1225. Fehlerfall wird ein negativer Wert ausgegeben, der der GEMDOS-Feh-
  1226. lernummer entspricht.
  1227.  
  1228.  Beispiel:
  1229.  
  1230.  [aktion-1]
  1231.     PATH F:\CAT
  1232.     RUN F:\CAT\CAT.PRG
  1233.  
  1234.  
  1235. 3.3.7  SEND
  1236. -----------
  1237.  
  1238. SEND <ss> <text>
  1239.  
  1240. Mit dem Befehl SEND können Sie Texte über die Schnittstellen AUX:,
  1241. MIDI:, MODEM1:, MODEM2:, SERIAL1:, SERIAL2: oder nur hier auch PRN:
  1242. gesendet werden. Als <ss> ist die oben angegebene Schnittstelle zu
  1243. definieren. Die Schnittstelle PRN: spricht die Druckerschnittstelle
  1244. an.
  1245.  
  1246. Es wird automatisch ein CR/LF angefügt.
  1247.  
  1248. Wenn der Befehl ausgeführt werden konnte, liefert diese Funktion
  1249. "TRUE" bzw. 0 zurück. Im Fehlerfall wird der GEMDOS-Fehlercode
  1250. gesetzt:
  1251.  
  1252.  -15: Unbekannte Schnittstelle
  1253.   -1: kein auszugebender Text vorhanden.
  1254.  
  1255.  
  1256. Beispiele:
  1257.  
  1258. [aktion-2]
  1259.    SEND MIDI: "HALLO"     Sendet den Text "HALLO" über Midi.
  1260.  
  1261. [aktion-4]
  1262.  
  1263.    SEND PRN: "Start"      Sendet den Text "Start" zum Drucker
  1264.  
  1265.  
  1266. 3.3.8  SENDFILE
  1267. ---------------
  1268.  
  1269. SENDFILE <ss> <file>
  1270.  
  1271. Mit dem Befehl SENDFILE können Sie Dateien über die Schnittstellen
  1272. AUX:, MIDI:, MODEM1:, MODEM2:, SERIAL1:, SERIAL2: oder nur hier auch
  1273. PRN: gesendet werden. Als <ss> ist die oben angegebene Schnittstelle
  1274. zu definieren. Die Schnittstelle PRN: spricht die Druckerschnitt-
  1275. stelle an.
  1276.  
  1277. Wenn der Befehl ausgeführt werden konnte, liefert diese Funktion
  1278. "TRUE" bzw. 0 zurück. Im Fehlerfall wird der GEMDOS-Fehlercode
  1279. gesetzt:
  1280.  
  1281.  -15: Unbekannte Schnittstelle
  1282.   -1: kein auszugebender Text vorhanden.
  1283.  
  1284.  
  1285. Beispiel:
  1286.  
  1287. [aktion-3]
  1288.    SENDFILE AUX: "C:\TEST.TXT"  Sendet die Datei TEST.TXT über AUX:
  1289.  
  1290.  
  1291. 3.3.9  SS
  1292. ---------
  1293.  
  1294. SS <ss> {"EIN", "AUS", "SET"} [<baud>]
  1295.  
  1296. Der Befehl SS definiert, ob eine Überwachung einer Schnittstelle
  1297. erfolgen soll oder nicht. Wenn z.B. ein Terminalprogramm läuft, kann
  1298. der BavariaEventManager nicht gleichzeitig dieselbe Schnittstelle
  1299. überwachen, da sonst jedes Programm nur die Hälfte der Zeichen über
  1300. die Schnittstelle erhält.
  1301.  
  1302. Um nun gleichzeitig solche Programme laufen lassen zu können, muß
  1303. beim Start eines Terminalprogramms die Schnittstellenüberwachung des
  1304. BavariaEventManagers abgeschaltet werden.
  1305.  
  1306. SS AUX: AUS schaltet die Überwachung der AUX:-Schnittstelle aus und
  1307. SS AUX: EIN schaltet die Überwachung wieder ein.
  1308.  
  1309. Als <ss> sind die Schnittstellen AUX:, MIDI:, MODEM1:, MODEM2:,
  1310. SERIAL1: und SERIAL2: zugelassen.
  1311.  
  1312. ACHTUNG: Wird eine Schnittstelle zweimal ausgeschaltet, muß sie
  1313. wieder zweimal eingeschaltet werden, damit die Überwachung wieder
  1314. aktiv wird.
  1315.  
  1316. Beim Kommando SS <ss> AUS wird die Baudrate der Schnittstelle ermit-
  1317. telt. Wird für die Schnittstelle später wieder das Kommando SS <ss>
  1318. EIN gegeben, so wird die vorher festgestellte Baudrate eingestellt.
  1319.  
  1320. Beim Einschalten kann explizit eine Baudrate angegeben werden, was
  1321. dann dazu führt, daß diese Baudrate anstatt der gemerkten Baudrate
  1322. gesetzt wird.
  1323.  
  1324. Das Setzen der Baudrate kann nur erfolgen, wenn entweder HSMODEM oder
  1325. MultiTOS installiert ist.
  1326.  
  1327. Um zum Ändern der Baudrate nicht ständig die Schnittstellen ein- und
  1328. ausschalten zu müssen, gibt es auch noch den folgenden Befehl:
  1329.  
  1330. SS <ss> SET <baudrate>
  1331.  
  1332. Damit wird sofort auf eine andere Schnittstellengeschwindigkeit
  1333. umgeschaltet. Dazu muß die Überwachung der Schnittstelle allerdings
  1334. bereits eingeschaltet sein. Als Nebenprodukt bei HSMODEM kann man mit
  1335. der folgenden Befehlsfolge das DTR-Signal des Modems droppen, damit
  1336. es auflegt:
  1337.  
  1338.  [poll-maus]
  1339.     PATH F:\CAT
  1340.     RUN F:\CAT\CAT.PRG CAT_LL.INF -iq
  1341.     SS MODEM2: AUS
  1342.     PATH F:\RUFUS.142
  1343.     RUN F:\RUFUS.142\RUFUS.APP RUF\LL.RUF
  1344.       ;jetzt dem Modem für 2 Sekunden DTR entziehen.
  1345.     SS MODEM2: EIN 0
  1346.     DELAY 2
  1347.       ;jetzt wieder auf alte Baudrate einstellen
  1348.     SS MODEM2: SET 76800
  1349.     IF (EXIST "F:\IMPORT\OUTFILE.TXT")
  1350.         PATH F:\CAT
  1351.         RUN F:\CAT\CAT.PRG CAT_LL.INF -oq
  1352.     ENDIF
  1353.  
  1354. Als Ergebnis liefert dieses Kommando den Text "EIN", wenn die Über-
  1355. wachung der Schnittstelle eingeschaltet ist und "AUS", wenn nicht. In
  1356. numerischen Variablen wird die Anzahl der EIN- bzw. AUS-Kommandos
  1357. ausgegeben.
  1358.  
  1359. Alle Werte größer als 0 bedeuten, daß die Schnittstelle eingeschaltet
  1360. ist.
  1361.  
  1362. Der Wert/Text -15 bedeutet, daß die angesprochene Schnittstelle nicht
  1363. gefunden wurde.
  1364.  
  1365.  
  1366. 3.3.10  CLEAR
  1367. -------------
  1368.  
  1369. CLEAR <ss>
  1370.  
  1371. Löscht alle anstehenden Zeichen einer Schnittstelle. Als <ss> können
  1372. alle Schnittstellen angegeben werden, die auch beim Befehl SEND
  1373. beschrieben wurden.
  1374.  
  1375. Als Ergebnis liefert die Funktion "TRUE" bzw. 0, wenn die Funktion
  1376. erfolgreich ausgeführt wurde. Ist die Schnittstelle unbekannt, wird
  1377. das Ergebnis -15 geliefert.
  1378.  
  1379.  
  1380. 3.3.11  QUIT
  1381. ------------
  1382.  
  1383. QUIT
  1384.  
  1385. Dieser Befehl beendet den BavariaEventManager. So kann man den
  1386. Manager auch mit einem Ereignis beenden.
  1387.  
  1388. Diese Funktion liefert kein Ergebnis.
  1389.  
  1390.  
  1391. 3.3.12  SAVE_INF
  1392. ----------------
  1393.  
  1394. SAVE_INF
  1395.  
  1396. Mit diesem Befehl wird die INF-Datei abgespeichert. Hiermit kann man
  1397. das Speichern auf eine Tastenkombination oder einen Button im
  1398. BavariaButtonDialog legen.
  1399.  
  1400. Diese Funktion liefert "TRUE" bzw. 0, wenn das Sichern der INF-Datei
  1401. erfolgreich abgeschlossen wurde, sonst wird der Fehler -10
  1402. gemeldet.
  1403.  
  1404.  
  1405. 3.3.13  GONG
  1406. ------------
  1407.  
  1408. GONG
  1409.  
  1410. Gibt einen Aufmerksamkeitsgong aus.
  1411.  
  1412.  
  1413. 3.3.14  ALERT
  1414. -------------
  1415.  
  1416. ALERT <icon> "<text>"
  1417.  
  1418. Dieser Befehl erzeugt eine ALERT-Box. Als Icon können Werte von 1 bis
  1419. 3 angegeben werden, wobei die Werte den verschiedenen Icons einer
  1420. ALERT-Box entsprechen (1 = Ausrufezeichen, 2 = Fragezeichen, 3 =
  1421. Stopschild).
  1422.  
  1423. Der <text> wird selbst formatiert, wobei ein '|' im Text einen festen
  1424. Zeilenumbruch definiert. Der Text ist in Anführungsstrichen zu set-
  1425. zen. Variablen können ebenfalls verwendet werden.
  1426.  
  1427. Es ist dabei zu beachten, daß die Alertbox den Bildschirm sperrt. Es
  1428. ist dann keine Eingabe in andere Programme mehr möglich. Ist das
  1429. nicht gewünscht, so ist der Befehl INFO zu verwenden.
  1430.  
  1431.  Beispiel:
  1432.  
  1433.  [alarm]
  1434.     erg$ = PATH U:\DEV
  1435.     ALERT 1 "Das Ergebnis von PATH|war: ";erg$;"."
  1436.  
  1437.  
  1438. 3.3.15  INFO
  1439. ------------
  1440.  
  1441. INFO <text>
  1442.  
  1443. Dieser Befehl läuft ähnlich dem Befehl ALERT ab. Es wird ein Fenster
  1444. geöffnet, in das maximal 6 Zeilen á 50 Zeichen Text eingetragen
  1445. werden können. Beachten Sie aber auch, daß eine Zeile der AKTION.DAT
  1446. nur maximal 254 Zeichen lang werden darf.
  1447.  
  1448. Im Gegensatz zu ALERT wird auf keine Bestätigung gewartet. Der Be-
  1449. nutzer kann das Fenster wieder schließen und erneut öffnen, damit er
  1450. die letzte Meldung sieht. Die Überwachung läuft weiter.
  1451.  
  1452. Der <text> wird selbst formatiert, wobei ein '|' im Text einen festen
  1453. Zeilenumbruch definiert.
  1454.  
  1455. In der Datei EVENTMAN.INF kann eingestellt werden, wie viele INFO-
  1456. Meldungen im Speicher verbleiben. Standardmäßig steht der Wert auf 5,
  1457. so daß man sich die letzten 5 INFO-Meldungen anschauen kann.
  1458.  
  1459.  Beispiel:
  1460.  
  1461.   [st-guide]
  1462.     IF (AKTIV "ST-GUIDE")
  1463.         VA-START ST-GUIDE *:\BEM.HYP AKTIV
  1464.     ELSE
  1465.         INFO "Der ST-GUIDE ist leider nicht installiert."
  1466.     ENDIF
  1467.  
  1468. Hier wird untersucht, ob der ST-GUIDE geladen ist und wenn dies nicht
  1469. der Fall ist (ELSE-Zweig), dann wird eine INFO-Meldung ausgegeben,
  1470. ohne daß andere Programme behindert werden.
  1471.  
  1472.  
  1473. 3.3.16  DISABLE
  1474. ---------------
  1475.  
  1476. DISABLE <nr> / ENABLE <nr>
  1477.  
  1478. Mit diesen zwei Befehlen können die Mausbuttons konfiguriert werden.
  1479. Die Knöpfe im Buttondialog sind von 1 bis 64 durchnumeriert. Mit
  1480. DISABLE 12 kann man somit den zwölften Knopf auf "nicht anwählbar"
  1481. setzen. ENABLE bewirkt exakt das Gegenteil. Der Knopf wird wieder
  1482. anwählbar geschaltet.
  1483.  
  1484. Es können ebenfalls Bereiche angegeben werden. DISABLE 9-16 sperrt
  1485. die Knöpfe 9, 10, 11, 12, 13, 14, 15 und 16. Es ist lediglich das "-"
  1486. Zeichen im Sinne "von bis" erlaubt.
  1487.  
  1488.  Beispiel:
  1489.  
  1490.  [Knopf]
  1491.     disable 1-5
  1492.     enable 7
  1493.  
  1494.  
  1495. 3.3.17  DELAY
  1496. -------------
  1497.  
  1498. DELAY <sek>
  1499.  
  1500. Dieser Befehl bewirkt, daß während einer vorgegebenen Zeit keine
  1501. Aktion ausgeführt wird. Die Zeit wird in Sekunden angegeben.
  1502.  
  1503. Im Statusfenster wird als Hinweis ">>> DELAY bis" ausgegeben und
  1504. darunter die Zeit, bis zu der der DELAY aktiv ist. Es bleiben zwar
  1505. alle Fenster bedienbar, auch werden die Redraws gemacht, allerdings
  1506. ist keine normale Bedienung über die Fenster mehr möglich. Es kann
  1507. nur noch die Menüleiste verwendet werden.
  1508.  
  1509. Wenn die Zeit abgelaufen ist, wird die angefangene Aktion
  1510. weitergeführt.
  1511.  
  1512.  
  1513. 3.3.18  VOLUME
  1514. --------------
  1515.  
  1516. VOLUME {L=<left> R=<right>, <laut>}
  1517.  
  1518. Dieser Befehl kann nur auf einem DMA-Sound-Subsystem (STE, TT oder
  1519. Falcon) ausgeführt werden. Ohne die DMA-Soundmöglichkeit wird ledig-
  1520. lich eine ALERT-Box ausgegeben, die darauf hinweist, daß dieser
  1521. Befehl hier nicht verwendet werden kann.
  1522.  
  1523. Man kann die Lautstärke des Soundsystems einstellen, indem man ent-
  1524. weder getrennt für links und rechts die Lautstärke angibt, oder nur
  1525. einen Wert, der dann für beide Kanäle eingestellt wird.
  1526.  
  1527. Will man die Lautstärke getrennt einstellen, muß man die Kennungen
  1528. "L=" und "R=" verwenden. Die Angaben für <left>, <right> oder <laut>
  1529. können in einen Bereich von 0 bis 15 (beim TT: 0-20) angegeben wer-
  1530. den, wobei 15 (20) ganz laut bedeutet.
  1531.  
  1532. Die Zahlenangaben müssen direkt ohne Leerzeichen hinter dem '='
  1533. stehen, sonst werden die Werte nicht erkannt.
  1534.  
  1535.  Beispiel:
  1536.  
  1537.   [leise]
  1538.     VOLUME L=2 R=7
  1539.   [laut]
  1540.     VOLUME 15
  1541.  
  1542.  
  1543. 3.3.19  PNICE
  1544. -------------
  1545.  
  1546. PNICE <prio>
  1547.  
  1548. Dieser Befehl ist nur unter MultiTOS einsetzbar. Er verändert die
  1549. Priorität des BavariaEventManagers. Die Priorität ist als Differenz
  1550. zu sehen, wobei ein negativer Wert die Priorität erhöht.
  1551.  
  1552.  Beispiel:
  1553.  
  1554.   [Prog]
  1555.     PNICE -20
  1556.  
  1557.  
  1558. 3.3.20  DIM
  1559. -----------
  1560.  
  1561. DIM <variable>
  1562.  
  1563. Dieser Befehl definiert eine Ganzzahl-Variable oder eine String-
  1564. Variable. Außerdem wird bei einer Stringvariablen die Länge des
  1565. Strings festgelegt.
  1566.  
  1567. Der Name der Variablen ist beliebig, jedoch werden Groß- und Klein-
  1568. buchstaben unterschieden. Es ist also auf die Schreibweise des Vari-
  1569. ablennamens zu achten. Es sind maximal 9 Zeichen für einen Variab-
  1570. lennamen erlaubt.
  1571.  
  1572. Um eine normale Ganzzahl-Variable zu erzeugen, ist der Befehl "DIM
  1573. wert" zu verwenden. Dadurch wird die Variable "wert" erzeugt. Eine
  1574. mehrdimensionale Ganzzahlvariable ist nicht möglich.
  1575.  
  1576. Um eine String-Variable zu erzeugen, muß der $ angegeben werden und
  1577. die Länge der Variablen. "DIM text$(20)" erzeugt eine Variable
  1578. "text$" mit einer maximalen Länge von 20 Zeichen. Wird die Länge des
  1579. Strings nicht angegeben, werden 20 Bytes reserviert.
  1580.  
  1581. Es können in einer DIM-Zeile auch mehrere, durch "," getrennte Vari-
  1582. ablen initialisiert werden. "DIM a,b,c,text1$(10),text2$(20)"
  1583. reserviert Platz für drei Ganzzahlvariablen und zwei Stringvariablen.
  1584.  
  1585. Der DIM-Befehl sollte im Ereignis "_Programmstart" stehen, damit die
  1586. Variablen nur einmal reserviert werden. Wird eine Variable ein
  1587. zweites Mal reserviert, erscheint eine Fehlermeldung.
  1588.  
  1589.  Beispiel:
  1590.  
  1591.   [_Programmstart]
  1592.     DIM erg
  1593.  
  1594.   [aktion]
  1595.     erg = EXIST "NEWDESK.INF"
  1596.  
  1597.  
  1598. 3.3.21  SET
  1599. -----------
  1600.  
  1601. SET <variable> <inhalt>
  1602.  
  1603. Setzt die Variable auf einen bestimmten Wert. Als Wert kann eine
  1604. Textfolge oder eine andere Variable oder ein Gemisch aus beiden
  1605. angegeben werden.
  1606.  
  1607. SET text$ "ACHTUNG die Datei ";datei$;" ist nicht vorhanden." erzeugt
  1608. in der Variablen text$ die Summe aus den beiden Texten und dem Inhalt
  1609. der Variablen datei$.
  1610.  
  1611. Eine numerische Variable wird mit SET ebenfalls auf einen Wert ge-
  1612. setzt. Derzeit können numerische Variablen lediglich für Texte
  1613. verwendet werden. Rechenformeln, wie + - * / sind derzeit nicht
  1614. möglich.
  1615.  
  1616.   Beispiel:
  1617.  
  1618.   [_Programmstart]
  1619.     DIM aufruf$(120)
  1620.   [aktion]
  1621.     SET aufruf$ "D:\EVEREST\EVEREST.PRG "
  1622.     SET wert 10
  1623.  
  1624.  
  1625. 3.3.22  FSELECT
  1626. ---------------
  1627.  
  1628. FSELECT <text>
  1629.  
  1630. Dieser Befehl ruft die Fileselektorbox auf und gibt als Titel den
  1631. "text" aus. Als Ergebnis wird der ausgewählte komplette Dateiname
  1632. geliefert oder ein leerer Text, wenn Abbruch angeklickt wurde.
  1633.  
  1634. Dadurch kann der Benutzer eine Datei auswählen, mit der man dann
  1635. einen Editor aufruft.
  1636.  
  1637.  Beispiel:
  1638.  
  1639.   [_Programmstart]
  1640.     DIM datei$(128)
  1641.   [aktion]
  1642.     datei$ = FSELECT "Eingabedatei auswählen"
  1643.     RUN "C:\EVEREST\EVEREST.PRG ";datei$
  1644.  
  1645.  
  1646. 3.3.23  MIDI-COM
  1647. ----------------
  1648.  
  1649. MIDI-COM {<rechner> <befehl>}
  1650.  
  1651. Erkennt das Programm, daß Midi-COM installiert ist, so meldet sich
  1652. der BavariaEvenManager als "EVENTMAN" mit einer Buffergröße von 4000
  1653. Bytes an. Dadurch ist es möglich, Befehle von einem BEM zum anderen
  1654. zu schicken, wenn der BavariaEventManager auf mehreren Rechnern im
  1655. MIDI-Netzwerk installiert ist.
  1656.  
  1657. Dazu dient der Befehl MIDI-COM. Es werden definierten anderen Rech-
  1658. nern im Netz Befehle übermittelt. Diese Befehle werden dann ausge-
  1659. führt. So ist es nun möglich ein Druckprogramm auf einem anderen
  1660. Rechner eine Datei auf dem eigenen Rechner ausdrucken zu lassen.
  1661.  
  1662. Als Rechner muß entweder die logische Nummer angegeben werden oder
  1663. der definierte Name des Rechners, auf dem der Befehl ausgeführt
  1664. werden soll.
  1665.  
  1666. Wird als Name "-1" angegeben, so wird die Nachricht an alle Rechner
  1667. im Ring verschickt.
  1668.  
  1669.   Beispiel:
  1670.  
  1671.   [_Programmstart]
  1672.     DIM datei$(128)
  1673.   [aktion]
  1674.     datei$ = FSELECT "Druckdatei wählen"
  1675.     MIDI-COM MEGA-ST "RUN C:\EVEREST\EVEREST.PRG N:\FALCON\";datei$
  1676.  
  1677.  
  1678. 3.3.24  EXIST
  1679. -------------
  1680.  
  1681. EXIST <datei>
  1682.  
  1683. Dieser Befehl sucht eine Datei und liefert als Ergebnis entweder 0
  1684. ("TRUE") dafür, daß die Datei vorhanden ist, oder eine negative Zahl,
  1685. wenn die Datei nicht gefunden wurde.
  1686.  
  1687. Er ist eigentlich nur sinnvoll für bedingte Ausführung (IF ELSE).
  1688.  
  1689.  Beispiel:
  1690.  
  1691.   [aktion]
  1692.     IF (EXIST "F:\IMPORT\OUTFILE.TXT")
  1693.         RUN C:\CAT\CAT.PRG -oq
  1694.     ENDIF
  1695.  
  1696. Cat wird nur dann aufgerufen, um ein Outfile einzusortieren, wenn das
  1697. das Outfile auch tatsächlich vorhanden ist.
  1698.  
  1699.  
  1700. 3.3.25  IF
  1701. ----------
  1702.  
  1703. IF (Bedingung) <befehle> ELSE <befehle> ENDIF
  1704.  
  1705. Mit den Befehlen IF ELSE ENDIF kann man eine bedingte Ausführung
  1706. erzwingen. Hinter IF muß in Klammern die Bedingung stehen.
  1707.  
  1708.      Als Vergleichsoperanden sind erlaubt:
  1709.         ==          gleich;
  1710.         != oder <>  ungleich;
  1711.         <           kleiner;
  1712.         >           größer;
  1713.         <=          kleiner gleich und
  1714.         >=          größer gleich.
  1715.  
  1716. Wird keine Bedingung angegeben, wird auf TRUE getestet. IF (EXIST
  1717. "C:\NEWDESK.INF") bedeutet also, daß der IF-Teil nur dan ausgeführt
  1718. wird, wenn eine Datei C:\NEWDESK.INF vorhanden ist.
  1719.  
  1720. Zu jedem IF muß ein ENDIF in einer eigenen Zeile existieren.
  1721.  
  1722. Jedes IF kann auch einen ELSE - Teil besitzen, der dann ausgeführt
  1723. wird, wenn die Bedingung nicht zutrifft.
  1724.  
  1725. Es können beliebig viele Befehle zwischen dem IF und dem (ELSE) ENDIF
  1726. stehen. Geschachtelte IFs sind ebenfalls erlaubt.
  1727.  
  1728.  
  1729. 3.3.26  PROTOKOLL
  1730. -----------------
  1731.  
  1732. PROTOKOLL <Dateiname> {E[IN], A[US], L[ÖSCHEN]}
  1733.  
  1734. Der Befehl PROTOKOLL dient zur leichteren Fehlersuche.
  1735.  
  1736.  PROTOKOLL <..> EIN startet das Protokollieren. Es wird im Proto-
  1737.                    kollverzeichnis eine Datei angelegt, in der
  1738.                    während des Programmlaufs mitgeschrieben wird,
  1739.                    welcher Befehl zu welcher Zeit ausgeführt wird.
  1740.  
  1741.  PROTOKOLL AUS     schaltet die Protokollierung wieder aus. Beim Pro-
  1742.                    grammstart ist die Protokollierung generell
  1743.                    ausgeschaltet.
  1744.  
  1745.  PROTOKOLL LÖSCHEN löscht die Protokolldateien aus dem Ordner.
  1746.  
  1747. Da das Protokollfile bei längerer Laufzeit sehr schnell an Größe
  1748. gewinnt, sollte die Protokollfunktion nur zu Fehlersuchzwecken
  1749. benutzt werden, um einen Festplattenüberlauf zu verhindern.
  1750.  
  1751. In der Datei EVENTMAN.INF kann der Name der Protokolldatei selber de-
  1752. finiert werden. Die Dateiendung ist immer ".PRO" und darf nicht mit
  1753. angegeben werden. Die Protokolldatei wird im EVENTMAN.DAT-Ordner
  1754. angelegt.
  1755.  
  1756. Der Dateiname kann fast vollkommen frei definiert werden. Entweder
  1757. nimmt man einen festen Dateinamen, z.B. PROTOKOLL, oder einen
  1758. flexiblen Dateinamen, wobei folgende Kürzel erlaubt sind:
  1759.  
  1760.  %a abgekürzter Wochentag
  1761.  %A ausgeschriebener Wochentag
  1762.  %b abgekürzter Monatsname
  1763.  %B voller Monatsname
  1764.  %c Datum und Uhrzeit
  1765.  %d Tag im Monat (1-31)
  1766.  %H Stunde (0-23)
  1767.  %I Stunde (0-12)
  1768.  %j Tag im Jahr (1-366)
  1769.  %m Monat (1-12)
  1770.  %M Minute (00-59)
  1771.  %p AM/PM%S Sekunde (00-59)
  1772.  %w Wochentag (0-6)
  1773.  %W Woche im Jahr (0-52)
  1774.  %x lokale Datumsdarstellung
  1775.  %X lokale Zeit-Darstellung
  1776.  %y Jahr ohne Jahrhundert (0-99)
  1777.  %Y Jahr mit Jahrhundertangabe
  1778.  %Z Name der Zeitzone (z.B. MEZ)
  1779.  %% das »%«-Zeichen
  1780.  
  1781. Der Dateiname kann maximal 59 Zeichen lang sein. Es können auch
  1782. weitere Ordnerebenen definiert werden, wobei dann der Ordner vorher
  1783. angelegt werden muß. Ein Löschen der Protokolldateien funktioniert
  1784. derzeit nur, wenn die Dateien nicht in einem Unterverzeichnis liegen.
  1785.  
  1786. Beispiel:
  1787.  
  1788. ProFileMask: protokolle\%y-%A\%j
  1789.  
  1790.  
  1791. 3.3.27  AKTIV
  1792. -------------
  1793.  
  1794. AKTIV <prog>
  1795.  
  1796. Der Befehl AKTIV dient zur Kontrolle, ob ein bestimmtes Programm
  1797. bereits geladen ist. Damit läßt sich kontrollieren, ob CAT bereits
  1798. läuft, bevor man CatPutz startet, da dies zu einer Fehlermeldung
  1799. führen würde.
  1800.  
  1801. Ebenso lassen sich so auch ACCs erkennen. Der Befehl dient lediglich
  1802. zur Flußsteuerung der Aktionen.
  1803.  
  1804. Als <prog> muß der Programmname ohne die Endung angegeben werden,
  1805. sonst wird das Programm nicht gefunden.
  1806.  
  1807. In nachfolgendem Beispiel wird der ST-GUIDE aufgerufen und aus dem
  1808. Hypertext BEM.HYP der Eintrag "AKTIV" angezeigt.
  1809.  
  1810. Ist der ST-GUIDE nicht geladen, dann wird der INFO-Befehl ausgeführt.
  1811.  
  1812.  Beispiel:
  1813.  
  1814.  [hilfe]
  1815.     IF (AKTIV "ST-GUIDE")
  1816.         VA-START ST-GUIDE *:\BEM.HYP AKTIV
  1817.     ELSE
  1818.         INFO "Der ST-GUIDE ist leider nicht installiert!"
  1819.     ENDIF
  1820.  
  1821.  
  1822. 3.3.28  VA-START
  1823. ----------------
  1824.  
  1825. VA-START <prog> <par>
  1826.  
  1827. Der Befehl VA-START dient dazu, ACCs oder bereits laufenden Appli-
  1828. kationen Parameter zu übergeben. Das Programm muß allerdings dazu in
  1829. der Lage sein, das Protokoll zu verstehen. Für Programmierer: Es wird
  1830. die Nachricht VA_START aus dem AV-Protokoll gesendet.
  1831.  
  1832. Dadurch kann einem Editor z.B. die Aufgabe gegeben werden, eine
  1833. weitere Datei zu laden, oder GEM-VIEW zeigt ein weiteres Bild an.
  1834.  
  1835. Man kann nun mit einer Tastenkombination im ST-GUIDE eine ganz be-
  1836. stimmte Stelle anspringen oder GSZRZ zum Up-/Downladen einer Datei
  1837. animieren.
  1838.  
  1839. Als <prog> muß der Programmname ohne die Endung angegeben werden,
  1840. sonst wird das Programm nicht gefunden. Unter <par> sind die Para-
  1841. meter anzugeben, die bei einem normalen Programmstart angegeben
  1842. würden.
  1843.  
  1844. Bei diesem Befehl ist es nicht möglich, auf das Ende der Applikation
  1845. zu warten, da dies nicht signalisiert wird. Der Befehl ist also ähn-
  1846. lich dem Befehl "EXEC" zu sehen.
  1847.  
  1848. Werden zwei Befehle VA-START schnell hintereinander ausgeführt, dann
  1849. kann es vorkommen, daß der statische Speicherbereich für die Para-
  1850. meter bereits vom neuen Befehl überschrieben wurde. Daher sollte
  1851. darauf geachtet werden, daß zwischen zwei VA-START-Befehlen eine
  1852. Pause von mindestens 2 Sekunden ist.
  1853.  
  1854.  Beispiel:
  1855.  
  1856.  [hilfe]
  1857.     IF (AKTIV "ST-GUIDE")
  1858.         VA-START ST-GUIDE *:\BEM.HYP AKTIV
  1859.     ELSE
  1860.         INFO "Der ST-GUIDE ist leider nicht installiert!"
  1861.     ENDIF
  1862.  
  1863.  
  1864. 3.3.29  WINDOW
  1865. --------------
  1866.  
  1867. WINDOW <fenster> {"O[PEN]", "C[LOSE]"}
  1868.  
  1869. Dieser Befehl dient dazu, daß automatisch die Fenster des Bavaria-
  1870. EventManagers geöffnet oder geschlossen werden können.
  1871.  
  1872. Es wurde ganz bewußt nur eine Tastenkombination fest im Programm
  1873. kodiert und das ist CNTRL-Q zum Beenden des Programms. Man kann sich
  1874. durch den Befehl WINDOW selbst eine Tastaturkombination festlegen, um
  1875. die Fenster des BEM zu öffnen oder zu schließen.
  1876.  
  1877. Für <fenster> sind folgende Angaben zulässig:
  1878.  
  1879.  H oder HAUPT    gibt das Registrier-Fenster an
  1880.  S oder STATUS   gibt das Statusfenster an
  1881.  M oder MAUS     gibt das Fenster für die Maustasten an
  1882.  K oder KALENDER gibt das Fenster für den Kalender an
  1883.  I oder INFO     gibt das Infofenster an
  1884.  T oder TOP      steht für das oberste Fenster
  1885.  
  1886.  
  1887. Die Angabe TOP ermittelt automatisch das oberste Fenster des Bavaria-
  1888. EventManagers und wendet den entsprechenden Befehl darauf an. Somit
  1889. ist es nur sinnvoll, wenn man "WINDOW TOP CLOSE" verwendet. Der
  1890. Befehl WINDOW TOP OPEN ist ohne Wirkung, da das oberste Fenster ja
  1891. bereits geöffnet ist.
  1892.  
  1893. Wird WINDOW <fenster> OPEN auf ein bereits geöffnetes Fenster ange-
  1894. wandt, wird dieses in den Vordergrund geholt und oberstes Fenster.
  1895.  
  1896.  Beispiel:
  1897.  
  1898.  [close-top]
  1899.     WINDOW TOP CLOSE
  1900.  [close-info]
  1901.     window i c
  1902.  
  1903.  
  1904. 3.3.30  GOTO
  1905. ------------
  1906.  
  1907. GOTO <aktion>
  1908.  
  1909. Mit dem Befehl GOTO wird direkt eine andere Aktion gestartet. Dabei
  1910. werden alle IF-Schleifen verlassen. Ein Rücksprung in die laufende
  1911. Aktion ist nicht möglich.
  1912.  
  1913. Der Befehl GOTO ermöglicht in Verbindung mit MIDI-COM, daß auf einem
  1914. anderen Rechner eine ganze Aktion und nicht nur ein Befehl ausgeführt
  1915. werden kann. Selbstverständlich geht beides auch kombiniert.
  1916.  
  1917.  Beispiel:
  1918.  
  1919.  [Midi-Poll]
  1920.     MIDI-COM FALCON "INFO \"Jetzt mußt Du aber mal Pollen!\""
  1921.     MIDI-COM FALCON "GOTO Poll-ASH"
  1922.     MIDI-COM FALCON "INFO \"Ab sofort läuft die Aktion auf Deinem
  1923.     Rechner!\""
  1924.  
  1925. Auf dem anderen Rechner muß dann in der AKTION.DAT die Aktion "Poll-
  1926. ASH" natürlich auch vorhanden sein!
  1927.  
  1928.  
  1929. 3.3.31  SKIP
  1930. ------------
  1931.  
  1932. SKIP <aktion> [<zeit>]
  1933.  
  1934. Es werden die Timerereignisse durchsucht, ob innerhalb der nächsten
  1935. <zeit> ein Timerereignis auftritt, das die Aktion <aktion> auslöst.
  1936. Ist dies der Fall, wird das Timerereignis so weit verschoben, bis es
  1937. außerhalb der <zeit> liegt.
  1938.  
  1939. Ist <zeit> nicht angegeben, wird das nächste Ereignis <aktion> genau
  1940. einmal verschoben.
  1941.  
  1942.  Beispiele:
  1943.  
  1944.  [poll-maus-button]
  1945.     PATH F:\CAT
  1946.     RUN F:\CAT\CAT.PRG CAT_LL.INF -iq
  1947.     PATH F:\RUFUS.142
  1948.     RUN F:\RUFUS.142\RUFUS.APP RUF\LL.RUF
  1949.     IF (EXIST "F:\IMPORT\OUTFILE.TXT")
  1950.         PATH F:\CAT
  1951.         RUN F:\CAT\CAT.PRG CAT_LL.INF -oq
  1952.         SKIP poll-maus
  1953.     ENDIF
  1954.  
  1955. Damit wird der MausTausch von Hand (als Button- oder Keybord-Event)
  1956. gestartet. Bei erfolgreichem Tausch, also wenn ein OUTFILE.TXT
  1957. (.ZIP, .LZH, je nach Packer) vorliegt, wird das nächste Timerereignis
  1958. "poll-maus" um ein Intervall verschoben. Damit die Abfrage sinnvoll
  1959. ist, muß natürlich das Outfile nach dem Einfügen oder vor dem Tausch
  1960. gelöscht werden.
  1961.  
  1962.  [Catputz]
  1963.     SKIP Catputz 4t
  1964.     PATH f:\cat
  1965.     RUN  f:\cat\catputz.prg
  1966.  
  1967. Verschiebt Catputz so weit, daß es innerhalb der nächsten 4 Tage
  1968. nicht mehr aktiviert wird.
  1969.  
  1970. <zeit> ohne Einheit oder "m" sind Minuten, "h" Stunden und "t" Tage.
  1971.  
  1972. Beispiele:
  1973.  
  1974.  4h -> 4 Stunden
  1975.  5t -> 5 Tage
  1976.  7m -> 7 Minuten
  1977.  7  -> 7 Minuten
  1978.  
  1979. Um Probleme zu vermeiden, sollten Einstellungen wie
  1980.  
  1981.  [test]
  1982.      skip test
  1983.      info "Das ist ein Krampf!"
  1984.  
  1985. vermieden werden. Dadurch würde die Aktion bei jeder Ausführung
  1986. verschoben und fände nur jedes zweite Mal statt.
  1987.  
  1988.  
  1989. 3.3.32  Variablen
  1990. -----------------
  1991.  
  1992. Variablen
  1993.  
  1994. Zur flexibleren Gestaltung der Ereignisse wurden nun auch Variablen
  1995. eingeführt. Nachfolgend sind ein paar Sätze aufgeführt, die bei der
  1996. Verwendung von Variablen beachtet werden sollten.
  1997.  
  1998.    ∙ Es können nur eindimensionale Wertvariablen und beliebig lange
  1999.      Stringvariablen definiert werden.
  2000.  
  2001.    ∙ Es können beliebig viele Variablen verwendet werden.
  2002.  
  2003.    ∙ Die Variablennamen sind maximal 9 Stellen lang.
  2004.  
  2005.    ∙ Eine String-Variable endet immer mit einem $.
  2006.  
  2007.    ∙ Die Variablen sind immer global, das heißt, werden diese in
  2008.      ihrem Wert von einem Ereignis verändert, haben sie auch in einem
  2009.      anderen Ereignis den neuen Wert.
  2010.  
  2011.    ∙ Um Variablen zu verwenden, müssen sie zuerst dimensioniert
  2012.      werden.
  2013.  
  2014.    ∙ Variablen können in Befehlen beliebig als Eingabewerte und als
  2015.      Ergebniswerte verwendet werden.
  2016.  
  2017.    ∙ String-Variableninhalte kann man mit einem ; zu längeren Texten
  2018.      zusammenketten. Angenommen die Variable text1$ hat den Wert
  2019.      "Michael" und die Variable text2$ hat den Wert "Pieper", dann
  2020.      ergibt der Ausdruck text1$; " Thomas "; text2$ den Text "Michael
  2021.      Thomas Pieper".
  2022.  
  2023.  
  2024. 3.4  Definition von Feiertagen
  2025. ==============================
  2026.  
  2027. Im BavariaEventManager ist für alle deutschen Feiertage eine Berech-
  2028. nungsformel vorhanden. Über die FEIERTAG.DAT-Datei kann man fest-
  2029. legen, für welches Bundesland die Feiertagsberechnung erfolgen soll.
  2030. Im Editor lassen sich die Feiertage und die Bundesländer ebenfalls
  2031. einstellen.
  2032.  
  2033. Sollen weitere Feiertage eingetragen werden, so könne diese in der
  2034. Datei FEIERTAG.DAT erfaßt werden. Diese Feiertage dienen dazu, daß
  2035. bei den TIMER-Ereignissen "FT" und "WT" (Feiertags und Werktags) nach
  2036. "Arbeitstag" und "Arbeitsfreier Tag" unterschieden werden kann.
  2037.  
  2038. Samstag und Sonntag zählen bei diesen Ereignissen ebenfalls als "FT".
  2039.  
  2040. In jeder Zeile der Datei steht ein Feiertag. Feste Feiertage werden
  2041. mit einer Jahreszahl von "xxxx" definiert, während bewegliche Feier-
  2042. tage mit der korrekten Jahreszahl eingegeben werden.
  2043.  
  2044. Das Format der Datei FEIERTAG.DAT sieht folgendermaßen aus:
  2045.  
  2046. In der ersten Zeile sollte die Definition des Bundeslandes stehen.
  2047.  
  2048.     Bundesland: <bundesland>
  2049.           Für <bundesland> sind folgende Eingaben möglich:
  2050.           "keine"
  2051.           "bundeseinheitlich"
  2052.           "Baden-Württemberg"
  2053.           "Bayern (Augsburg)",
  2054.           "Bayern (evangelisch)"
  2055.           "Bayern (katholisch)"
  2056.           "Berlin"
  2057.           "Brandenburg"
  2058.           "Bremen"
  2059.           "Hamburg"
  2060.           "Hessen"
  2061.           "Mecklenburg-Vorpommern"
  2062.           "Niedersachsen"
  2063.           "Nordrhein-Westfalen"
  2064.           "Rheinland-Pfalz"
  2065.           "Saarland"
  2066.           "Sachsen (evangelisch)"
  2067.           "Sachsen (katholisch)",
  2068.           "Sachsen-Anhalt"
  2069.           "Schleswig-Holstein"
  2070.           "Thüringen (evangelisch)"
  2071.           "Thüringen (katholisch)"
  2072.  
  2073. Standardwert ist "bundeseinheitlich". Mit "keine" wird die interne
  2074. Feiertagsberechnung abgeschaltet und es können komplett eigene Feier-
  2075. tage definiert werden.
  2076.  
  2077. Die folgenden Zeilen geben eigene Feiertage an:
  2078.  
  2079. ttmmjjjj
  2080.  
  2081.  tt    Tag des Feiertags (Der beim TIMER.EVT "FT" beachtet werden
  2082.        soll)
  2083.  
  2084.  mm    Monat
  2085.  
  2086.  jjjj  Jahr. Wird "xxxx" angegeben, so ist das ein fester Feiertag,
  2087.        der in jedem Jahr am gleichen Tag ist.
  2088.  
  2089. In der mitgelieferten Datei wurden der Heilige Abend (24.12.) und
  2090. Silvester (31.12.) eingetragen, da diese Tage zwar keine Feiertage
  2091. sind, aber dennoch bei der Telekom als "Billigtarif" gelten.
  2092.  
  2093. In Zusammenhang mit dem Eintrag "Feiertage: bundeseinheitlich" in der
  2094. FEIERTAG.DAT erreicht man, daß die Ereignisse "FT" an "billigen
  2095. Tagen" ausgeführt werden, während bei "WT" der Normaltarif im
  2096. Telefonnetz gilt.
  2097.  
  2098.  
  2099. 3.5  Systemkonfiguration
  2100. ========================
  2101.  
  2102. Mit diesem Editorteil lassen sich die Dateien EVENTMAN.INF und
  2103. BEM_EDIT.INF bearbeiten. Beim Öffnen des Fensters werden die
  2104. aktuellen Daten eingeladen und angezeigt.
  2105.  
  2106. In der ersten Zeile kann der EVT-Systempfad angegeben werden. In
  2107. diesem werden sämtliche *.EVT-Dateien gesucht. Ist dieser bereits
  2108. durch eine Environmentvariable festgelegt, so ist dieser Menüpunkt
  2109. hell dargestellt. Er kann dann zwar per Tastatur verändert werden,
  2110. man darf aber nicht vergessen, daß die Änderung nicht wirksam wird,
  2111. da die Environmentvariable Vorrang hat.
  2112.  
  2113. Der zweite Pfad (TextEditor) gibt das Programm an, das aufgerufen
  2114. wird, wenn der Aktionseditor gestartet wird. Hier kann ein beliebiger
  2115. Texteditor verwendet werden.
  2116.  
  2117. Der dritte Pfad gibt den BEM-Editor selber an. Diesen Pfad sollten
  2118. Sie ändern, wenn Sie ihren BavariaEventManager an einen anderen Platz
  2119. kopieren.
  2120.  
  2121. Die Angabe der Programmprüfung alle x Sekunden bewirkt, daß im ange-
  2122. gebenen Abstand überprüft wird, ob ein Programmereignis stattgefunden
  2123. hat.
  2124.  
  2125. Ein niedriger Wert bewirkt eine sofortige Reaktion auf einen Pro-
  2126. grammstart, bremst das System aber durch häufige Anfragen.
  2127.  
  2128. Die Angaben der EVT-Dateiprüfung ist nur in Singletasking-
  2129. Betriebssystemen von Bedeutung, oder wenn anstatt des BEM-Editors ein
  2130. normaler Texteditor verwendet wird. Es wird hier die Zeitspanne
  2131. angegeben, in der die *.EVT- Dateien überprüft werden sollen, ob sie
  2132. geändert worden sind. Unter Multitaskingsystemen wird vom BEM-EDIT
  2133. eine Änderungsnachricht an den Eventmanager gesandt, sobald eine
  2134. Datei verändert wurde.
  2135.  
  2136. Ein niedriger Wert bewirkt eine sofortige Reaktion auf eine Datei-
  2137. änderung, bremst das System aber durch häufige Plattenzugriffe. Der
  2138. Eintrag 0 bewirkt, daß die Überprüfung abgeschaltet wird.
  2139.  
  2140. Der letzte Wert: "Maximal x INFO-Meldungen behalten" bestimmt, wie-
  2141. viel INFO-Meldungen im Speicher bleiben und erneut angezeigt werden
  2142. können. Bei einem Eintrag von 10 können Sie sich also die letzten 10
  2143. INFO- Meldungen ansehen.
  2144.  
  2145.  
  2146. 3.5.1  EVENTMAN.INF
  2147. -------------------
  2148.  
  2149. Die aktuellen Konfigurationen im BavariaEventManager können in der
  2150. Datei EVENTMAN.INF abgespeichert werden. Diese Datei wird beim Pro-
  2151. grammstart eingelesen und kann mit dem Knopf "Sichern" oder dem
  2152. Menüeintrag Datei > Konfiguration sichern erstellt werden.
  2153.  
  2154. Der Inhalt dieser Datei kann mit einem Texteditor geändert werden.
  2155.  
  2156. Die Eintragungen sehen folgendermaßen aus:
  2157.  
  2158.  AccFilePath: <pfad>
  2159.      Gibt den Pfad an, in dem die *.EVT-Dateien liegen.
  2160.  
  2161.  HauptWindow: <akt> <xx> <yy>
  2162.      Gibt die aktuelle Fensterposition an, an der das HauptFenster
  2163.      positioniert werden soll. Der Parameter "akt" kann entweder
  2164.      "Closed" oder "Opend" sein, je nachdem, ob das Fenster bei Pro-
  2165.      grammstart geöffnet sein soll oder nicht.
  2166.  
  2167.  KnopfWindow: <akt> <xx> <yy>
  2168.      Gibt die Fensterposition für das Mausknopffenster an. Der Para-
  2169.      meter "akt" kann entweder "Closed" oder "Opend" sein, je nach-
  2170.      dem, ob das Fenster gleich zu Anfang aufgehen soll oder nicht.
  2171.  
  2172.  KalenWindow: <akt> <xx> <yy>
  2173.      Gibt die Fensterposition für das Kalenderfenster an. Der Para-
  2174.      meter "akt" kann entweder "Closed" oder "Opend" sein, je nach-
  2175.      dem, ob das Fenster gleich zu Anfang aufgehen soll oder nicht.
  2176.  
  2177.  SekProgFind: <ss>
  2178.      Gibt an, in welchem Abstand die in der Datei PROGRAMM.EVT ange-
  2179.      gebenen Programme im System gesucht werden sollen. Standardwert
  2180.      ist 2. Die Angabe erfolgt in Sekunden. Ein Wert von 0 bedeutet,
  2181.      daß die Programme nicht gesucht werden sollen.
  2182.  
  2183.  SekEvtDatei: <ss>
  2184.      Gibt an, in welchem Abstand die *.EVT-Dateien auf ein neues
  2185.      Dateidatum überprüft werden sollen. Ist im System kein Cache
  2186.      installiert, sollte dieser Wert relativ hoch angesetzt werden
  2187.      oder mit 0 abgeschaltet bleiben. Angabe erfolgt in Sekunden,
  2188.      Standardwert ist 0. Erforderlich ist dieser Wert nur, wenn die
  2189.      *.EVT-Dateien mit einem Texteditor geändert werden. Der Editor
  2190.      BEM_EDIT.PRG sendet automatisch eine Nachricht an den Bavaria-
  2191.      EventManager, wenn Dateien verändert wurden, damit dieser die
  2192.      Dateien dann nachladen kann.
  2193.  
  2194.  BEMEditPath: <pfad des BEM_EDIT.PRG>
  2195.      Gibt an, wo der BEM-Editor zu finden ist. Wird über das Menü
  2196.      Datei > Ereigniseditor starten der Editor aufgerufen, wird das
  2197.      Programm gestartet, das hier definiert ist.
  2198.  
  2199.  INFO-Anzahl: <Anzahl der maximalen INFO-Texte>
  2200.      Gibt an, wie viele INFO-Anzeigen im Speicher gehalten werden
  2201.      sollen, bevor sie gelöscht werden.
  2202.  
  2203.  
  2204. 3.5.2  BEM_EDIT.INF
  2205. -------------------
  2206.  
  2207. Im BEM-Editor kann mit dem Menüpunkt Datei > Konfiguration sichern
  2208. ebenfalls eine INF-Datei (BEM_EDIT.INF) geschrieben werden. In
  2209. dieser sind die Fensterpositionen des Editors vermerkt.
  2210.  
  2211.     HauptWindow: <akt> <xx> <yy>
  2212.     TimerWindow: <akt> <xx> <yy>
  2213.     ProgrWindow: <akt> <xx> <yy>
  2214.     KeybdWindow: <akt> <xx> <yy>
  2215.     Maus_Window: <akt> <xx> <yy>
  2216.     DevicWindow: <akt> <xx> <yy>
  2217.     FeierWindow: <akt> <xx> <yy>
  2218.  
  2219.     Gibt die aktuelle Fensterposition an, an der das entsprechende
  2220.     Fenster positioniert werden soll. Der Parameter "akt" kann ent-
  2221.     weder "Closed" oder "Opend" sein, je nachdem, ob das Fenster bei
  2222.     Programmstart geöffnet sein soll oder nicht.
  2223.  
  2224. AktionsEdit: <editor-pfad>
  2225.  
  2226.     Gibt den für den Aktionseditor an.
  2227.  
  2228.  
  2229. 3.6  Der BavariaEventManager in Aktion
  2230. ======================================
  2231.  
  2232. Wird der BavariaEventManager ohne eine EVENTMAN.INF-Datei gestartet,
  2233. erscheint lediglich eine Menüzeile. Dennoch hat der EventManager
  2234. bereits die Ereignisdateien eingelesen und den Betrieb aufgenommen.
  2235.  
  2236. Um nun genauere Informationen des BavariaEventManagers abzurufen,
  2237. oder eine "Maustaste" zu betätigen, können bis zu 4 Fenster geöffnet
  2238. werden.
  2239.  
  2240. Bei der Benutzung als normals Programm kann man über die Menüzeile
  2241. Fenster > ... die entsprechenden Fenster öffnen.
  2242.  
  2243. Wird der BavariaEventManager als ACC unter SingleTOS eingesetzt, muß
  2244. man über das DESK-Menü > EventManager gehen. Man erhält hier das
  2245. Registrier-Fenster, in dem man auch die Möglichkeit hat, die anderen
  2246. Fenster zu öffnen.
  2247.  
  2248.  
  2249. +----------------------+----------------------+-----------------------------+
  2250. | Fenster\Einsatz als: | ACC unter SingleTOS  | Programm/ACC als Multitask  |
  2251. +----------------------+----------------------+-----------------------------+
  2252. | Registrier-Fenster   | DESK > EventManager  | EventManager > B.E.M.-Infos |
  2253. | BavariaEventStatus   | Reg.F. > Status      | Fenster > Statusfenster     |
  2254. | BavariaButtonDialog  | Reg.F. > Maustasten  | Fenster > Maustasten        |
  2255. | BavariaKalender      | Reg.F. > Kalender    | Fenster > Kalender          |
  2256. | BavariaInformation   | Reg.F. > Information | Fenster > Infofenster       |
  2257. +----------------------+----------------------+-----------------------------+
  2258.  
  2259.           (Tabelle 2: Die Bedienung des BavariaEventManager)
  2260.  
  2261.  
  2262.  
  2263. 3.6.1  Registrier-Fenster
  2264. -------------------------
  2265.  
  2266. Das Registrier-Fenster hat zwei Funktionen. Zuerst dient es als In-
  2267. formation über den Programmierer und das Copyright. In der Titelzeile
  2268. werden die Version und das Erstellungsdatum angezeigt.
  2269.  
  2270. Ist das Programm registriert, ist der Name, auf den das Programm
  2271. registriert wurde, in dem Fenster eingetragen.
  2272.  
  2273. Als zweite Funktion dient es zum Öffnen der Fenster. Es stehen hier
  2274. im linken unteren Bereich des Fensters 4 Buttons zur Verfügung, mit
  2275. denen die 4 weiteren Fenster geöffnet werden können.
  2276.  
  2277. Beim Einsatz als ACC unter SingleTOS ist dies die einzige Möglich-
  2278. keit, die Fenster zu öffnen, da ein Accessory keine Menüleiste
  2279. besitzt.
  2280.  
  2281. Das Informationsfenster ist nur dann anwählbar, wenn auch eine In-
  2282. formation durch einen INFO-Befehl erzeugt wurde. Ansonsten ist der
  2283. Button nicht anwählbar.
  2284.  
  2285.  
  2286. 3.6.2  BavariaEventStatus
  2287. -------------------------
  2288.  
  2289. In diesem Fenster kann man den aktuellen Status der Timerereignisse
  2290. sehen, sowie die Zeichen, die gerade aktuell an den Schnittstellen
  2291. anstehen.
  2292.  
  2293. An oberster Stelle läuft eine Uhr, die die aktuelle Systemzeit an-
  2294. zeigt. Das Feld darunter gibt das nächste Timerereignis an, das
  2295. ausgeführt werden soll. Man kann somit erkennen, wann welches
  2296. Ereignis als nächstes ansteht.
  2297.  
  2298. Ebenso sieht man, wie oft das Ereignis wiederholt werden soll.
  2299.  
  2300. Der Schnittstellenstatus zeigt an, auf welchen Schnittstellen die
  2301. Überwachung eingeschaltet ist (dunkel dargestellt) und welche
  2302. Schnittstellen ausgeschaltet sind (hell dargestellt). Bei den
  2303. aktiven Schnittstellen werden auch die aktuell anstehenden Zeichen
  2304. ausgegeben, so daß man sich einen Überblick verschaffen kann,
  2305. welche Zeichen bereits empfangen wurden.
  2306.  
  2307. Dieses Fenster läßt sich iconifizieren, wenn dies vom Betriebssystem
  2308. unterstützt wird. Es wird dann eine Stopuhr als Icon angezeigt.
  2309.  
  2310.  
  2311. 3.6.3  BavariaButtonDialog
  2312. --------------------------
  2313.  
  2314.  
  2315. In diesem Fenster sind die in der BUTTON.EVT definierten Maustasten
  2316. dargestellt. Es sind 4 * 4 Tasten, die nur anwählbar sind, wenn auch
  2317. ein Eintrag dazu vorhanden ist.
  2318.  
  2319. Es stehen noch 3 weitere Ebenen zur Verfügung, die mit den Tasten
  2320. SHIFT, CONTROL und ALTERNATE erreicht werden können. Die Bedienung
  2321. des Fensters ist nur dann möglich, wenn das Fenster das oberste Fen-
  2322. ster ist.
  2323.  
  2324. Mit der Maus kann man nun auf eine der Tasten klicken und die zuge-
  2325. hörige Aktion wird ausgelöst.
  2326.  
  2327. Dieses Fenster läßt sich iconifizieren, wenn dies vom Betriebssystem
  2328. unterstützt wird. Es wird dann eine Maus als Icon angezeigt.
  2329.  
  2330.  
  2331. 3.6.4  BavariaKalender
  2332. ----------------------
  2333.  
  2334. In diesem Fenster wird ein aktueller Kalender angezeigt. Der aktuelle
  2335. Tag wird dick umrandet dargestellt. Bei einer Farbauflösung erschei-
  2336. nen außerdem Feiertage und Sonntage in der Farbe rot, Samstage in
  2337. dunkelrot und normale Werktage in schwarz.
  2338.  
  2339. In der Infozeile steht das aktuelle Datum. Ist dies ein Feiertag,
  2340. wird ebenfalls ausgegeben, welcher Feiertag es ist. Es wird die
  2341. aktuelle Einstellung der Datei FEIERTAG.DAT übernommen.
  2342.  
  2343. Mit den Hoch- oder Runter-Knöpfen kann jeweils einen Monat weiter-
  2344. geblättert werden. Klickt man auf den grauen Bereich ober- oder
  2345. unterhalb des Schiebers, wird jeweils ein Jahr vor- oder
  2346. zurückgeblättert.
  2347.  
  2348. Der Bereich des Kalenders geht von Januar 1970 bis Dezember 2037.
  2349.  
  2350.  
  2351. 3.6.5  BavariaInformation
  2352. -------------------------
  2353.  
  2354. In diesem Fenster werden die Texte ausgegeben, die mit dem Befehl
  2355. INFO erzeugt wurden. Dieses Fenster ist daher nur anwählbar, wenn
  2356. bereits im Programmlauf ein INFO-Befehl ausgeführt wurde.
  2357.  
  2358. Es wird auch genau das Datum und die Uhrzeit der Meldung angegeben,
  2359. da ja ein Weiterarbeiten und auch ein Schließen des Fensters durchaus
  2360. möglich ist. In einem eingerahmten Bereich wird die Meldung
  2361. ausgegeben.
  2362.  
  2363.  
  2364. 4. Neuerungen ab der Version 1.11a
  2365. **********************************
  2366.  
  2367. 4.1 EVENTMAN.INF
  2368. ----------------
  2369.  
  2370. In der EVENTMAN.INF gibts die neue Variable "KnopfInfoln:" 
  2371.  
  2372. Diese Variable kann mit Ja und Nein belegt sein. Diese Variable definiert,
  2373. ob die INFO-Zeile des Mausknopffensters dargestellt werden soll, oder nicht.
  2374.  
  2375. Beim Wert "Nein" wird das Fenster ohne INFO-Zeile gezeichnet und nimmt
  2376. daher weniger Platz weg. Wenn man die Informationen, welche Sondertasten
  2377. gedrückt sind weiterhin haben will, so muß man die Variable auf "Ja" setzen.
  2378.  
  2379. Die Position des INFO-Fensters wird bei "Einstellungen sichern" nun auch
  2380. gesichert. Die Variable dafür heißt "InTxtWindow:" und hat das gleiche Format
  2381. wie die anderen Fenstervariablen. Zuerst also die Definition, ob das Fenster
  2382. beim Programmstart geöffnet werden soll, oder nicht, dann die x und y Position
  2383. des Fensters.
  2384.  
  2385. 4.2  Programmstart und VA_START
  2386. -------------------------------
  2387.  
  2388. Dem BavariaEventManager können nun Aktionsdateien übergeben werden. Daher
  2389. ist es möglich Batchdateien für den BEM zu schreiben, die per Doppelklick
  2390. ausgeführt werden. In einer solchen Aktionsdatei darf kein AKTIONS-Name
  2391. eingetragen werden!
  2392.  
  2393. Ein entsprechendes Icon für *.BEM-Dateien ist ebenfalls beigelegt.
  2394.  
  2395. 4.3  Neuer Befehl PLAY-KEY
  2396. --------------------------
  2397.  
  2398. PLAY-KEY <Tastatureingabe>
  2399.  
  2400. Dieser Befehl spielt dem System Tastatureingaben vor. Als 
  2401. <Tastatureingabe> sind die unten beschriebenen Zeichen erlaubt!
  2402.  
  2403. Dieser Befehl bewirkt, daß die Tastatureingaben dem obersten Programm 
  2404. gemeldet werden! Evtl. ist dafür zu sorgen, daß ein Programm das 
  2405. oberste Programm ist, dazu dient der Befehl TOP
  2406.  
  2407. Zwischen den einzelnen Tastendrücken wird eine definierte Wartezeit 
  2408. eingelegt, damit das Programm diese Tatstureingaben auch verarbeiten 
  2409. kann.
  2410.  
  2411. Diese Zeit wird in der EVENTMAN.INF mit dem Parameter KeyDelayTim: 
  2412. definiert. Der Standardwert ist 200, die Angabe erfolgt in 
  2413. Millisekunden!
  2414.  
  2415. Beispiel: PLAY-KEY "<C|N>Diese Datei wurde neu angelegt!<C|S>"
  2416.  
  2417. 4.4  Neuer Befehl: TOP
  2418. ----------------------
  2419.  
  2420. TOP <Programm>
  2421.  
  2422. Sorgt dafür, daß das <Programm> an oberste Stelle erscheint und somit 
  2423. die Tastatureingaben erhält. (Es ist zu beachten, daß neu geöffnete 
  2424. Fenster diese Reihenfolge durcheinanderbringen!
  2425.  
  2426. Als <Programm> ist der Dateiname des Programmes ohne Extension zu 
  2427. verwenden!
  2428.  
  2429. Unter Magic wird das interne Protokoll verwendet unter Mint ist es 
  2430. notwendig, daß ein Fenster des Programms geöffnet ist, sodaß dieses 
  2431. getoped werden kann.
  2432.  
  2433. Beispiel: TOP "EVEREST"
  2434.  
  2435. 4.5  Neuer Befehl: AV-SENDKEY
  2436. -----------------------------
  2437.  
  2438. AV-SENDKEY <Programm> <Tastatureingabe>
  2439.  
  2440. Dieser Befehl schickt dem <Programm> die <Tastatureingabe> mit dem 
  2441. AV-SENDKEY-Protokoll. Dieses Protokoll geht nur, wenn das Programm 
  2442. dies auch unterstützt. Der Fileselektor kann z.B: damit nicht bedient 
  2443. werden!
  2444.  
  2445. Der Vorteil dieses Befehls gegenüber dem PLAY-KEY-Befehl ist der, daß 
  2446. das Programm an den die Zeichen geschickt werden nicht das oberste 
  2447. Fenster besitzen muß.
  2448.  
  2449. Als <Programm> ist der Dateiname des Programmes ohne Extension zu 
  2450. verwenden! Als <Tastatureingabe> sind die unten beschriebenen Zeichen 
  2451. erlaubt!
  2452.  
  2453. Zwischen den einzelnen Tastendrücken wird eine definierte Wartezeit 
  2454. eingelegt, damit das Programm diese Tatstureingaben auch verarbeiten 
  2455. kann.
  2456.  
  2457. Diese Zeit wird in der EVENTMAN.INF mit dem Parameter KeyDelayTim: 
  2458. definiert. Der Standardwert ist 200, die Angabe erfolgt in 
  2459. Millisekunden!
  2460.  
  2461. Selbstverständlich kann man dem EVENTMAN selber auch per AV-SENDKEY 
  2462. ein paar Tastendrücke zukommen lassen.
  2463.  
  2464. Beispiel: 
  2465. (öffnet Nachrichtenauswahl, selektierte eine Mail und zeigt diese an)
  2466.     AV-SENDKEY "CAT" "<C|O>"
  2467.     DELAY 2
  2468.     AV-SENDKEY "CAT" "<CDown>V"
  2469.  
  2470.  
  2471. 4.6 Neuer Befehl: EXIT
  2472. ----------------------
  2473.  
  2474. EXIT <Programm>
  2475.  
  2476. Schickt dem <Programm> eine Shutdown-Nachricht, sodaß es sich beenden 
  2477. soll. Ein Erfolg kann nicht kontrolliert werden! Es ist vom Programm 
  2478. abhängig, ob es sich beendet oder nicht!
  2479.  
  2480. Als <Programm> ist der Dateiname des Programmes ohne Extension zu 
  2481. verwenden!
  2482.  
  2483. Beispiel: EXIT "COMA"
  2484.  
  2485. 4.7 Neuer Befehl: KILL
  2486. ----------------------
  2487.  
  2488. KILL <Programm>
  2489.  
  2490. Wirft das <Programm> aus dem Speicher. Unter Magic wird das 
  2491. Magic-interne Protokoll verwendet und unter Mint wird die Datei 
  2492. U:\PROC\<programm>.* gelöscht.
  2493.  
  2494. Es werden keine Daten mehr gesichert, das Programm wird hart entfernt!
  2495.  
  2496. Als <Programm> ist der Dateiname des Programmes ohne Extension zu 
  2497. verwenden!
  2498.  
  2499. Beispiel: KILL "UPOINT"
  2500.  
  2501. 4.8 Mögliche Definitionen der <Tastatureingabe>
  2502. -----------------------------------------------
  2503.  
  2504. alle Zeichen erlaubt außer "<"
  2505. soll zu einem Zeichen Shift, Control oder Alternate zusätzlich 
  2506. gedrückt werden, so ist folgender Ersatz dafür zu verwenden:
  2507.  
  2508. <...Zusatztasten...|...Normaltaste...>
  2509.  
  2510. Die Zusatztasten werden folgendermaßen abgekürzt:
  2511.  
  2512. S = Shift (links)
  2513. L = Shift links
  2514. R = Shift rechts
  2515. C = Control
  2516. A = Alternate
  2517.  
  2518. Die Zusatzzeichen können auch zusammen verwendet werden: <CA|F> 
  2519. Bedeutet, daß Control + Alternate gleichzeitig mit der Taste "F" 
  2520. simuliert werden sollen.
  2521.  
  2522. Als Normaltaste ist jedes ASCII-Zeichen erlaubt, mit Ausnahme von ">"
  2523.  
  2524. Sollen als Normaltaste die Sondertasten verwendet werden, so sind 
  2525. diese mit mindestens zwei Buchstaben zu beschreiben. Folgende 
  2526. Sondertasten sind möglich:
  2527.  
  2528. ES = Esc
  2529. TA = Tab
  2530. BA = Backspace
  2531. DE = Delete
  2532. HE = Help
  2533. UN = Undo
  2534. IN = Insert
  2535. CH = ClearHome
  2536. CU = Cursor up (Pfeil nach oben)
  2537. CL = Cursor left (Pfeil nach links)
  2538. CD = Cursor down (Pfeil nach unten)
  2539. CR = Cursor right (Pfeil nach rechts)
  2540. EN = Enter (auf der Zahlentastatur)
  2541. RE = Return (auf der Haupttastatur)
  2542. F1 = Funktionstaste 1
  2543. ...
  2544. F9 = Funktionstaste 9
  2545. F0 = Funktionstaste 10
  2546.  
  2547. <CA|Enter> Bewirkt, daß die Entertaste der Zahlentastatur gleichzeitig 
  2548. mit Control und Alternate simuliert wird.
  2549.  
  2550.  
  2551.  
  2552.  
  2553.  
  2554. A  Bekannte Probleme
  2555. ********************
  2556.  
  2557. Dieser Abschnitt ist einem unerfreulichem Thema gewidmet. Leider gibt
  2558. es Dinge zwischen Himmel und Erde, die meinem BavariaEventManager das
  2559. Leben schwer machen.
  2560.  
  2561. Um aber dem Anwender bei bekannten Problemen nicht im Regen stehen zu
  2562. lassen, sollen hier kurze Problemschilderungen und deren Lösungen
  2563. beschrieben werden.
  2564.  
  2565.  
  2566. A.1  FPATCH2.PRG
  2567. ================
  2568.  
  2569. Wird dieses Programm eingesetzt, kann keine Schnittstellenüberwachung
  2570. stattfinden. Der Patch verhindert souverän auch die Ausgabe auf die
  2571. Schnittstelle. Wer diesen Patch nicht braucht, sollte darauf
  2572. verzichten.
  2573.  
  2574.  
  2575. A.2  CAT auf dem Falcon mit TOS 4.04
  2576. ====================================
  2577.  
  2578. Wird CAT über den BavariaEventManager gestartet und über CAT ein
  2579. weiteres Programm gestartet (z.B: CAT-Parameter "-t"), kann CAT kein
  2580. zweites Mal gestartet werden. Ich gebe zu, es ist sehr verwirrend
  2581. ...
  2582.  
  2583. Da das Problem auch ohne den BavariaEventManager nachvollziehbar ist,
  2584. kann mein Programm keine Schuld treffen.
  2585.  
  2586. Um dennoch mit CAT automatischen Maustausch machen zu können, muß das
  2587. Terminalprogramm im Batch aufgerufen werden.
  2588.  
  2589.  Hier ein verkürztes Beispiel in der AKTION.DAT:
  2590.  
  2591.  [Poll]
  2592.      RUN CAT.PRG -iq
  2593.      RUN RUFUS.APP MAUS.RUF
  2594.      RUN CAT.PRG -oq
  2595.  
  2596.  
  2597. A.3  Gestartetes Programm findet seine RSC-Datei nicht
  2598. ======================================================
  2599.  
  2600. Wird über die Befehle RUN oder EXEC ein Programm gestartet, so kann
  2601. es vorkommen, daß der aktuelle Pfad nicht auf das Programm zeigt. Da
  2602. aber viele Programme im aktuellen Verzeichnis ihre *.RSC-Datei
  2603. suchen, muß vorher mit dem Kommando PATH der Pfad gesetzt werden.
  2604.  
  2605.  Hier ein Beispiel für den CAT-Start:
  2606.  
  2607.  [Poll]
  2608.      PATH F:\CAT
  2609.      RUN F:\CAT\CAT.PRG -iq
  2610.  
  2611.  
  2612. A.4  Einsatz des BavariaEventManagers als ACC
  2613. =============================================
  2614.  
  2615. Ich möchte betonen, daß die Probleme, die hier beschrieben werden,
  2616. nur auftreten, wenn der BavariaEventManager als ACC in einem Single-
  2617. tasking- Betriebssystem betrieben wird. Unter Multitasking (Mag!C und
  2618. MultiTOS) treten die Probleme nicht auf.
  2619.  
  2620.                  Hier steht ganz am Anfang der Satz:
  2621.  
  2622.               ACCs dürfen keine Programme nachstarten!
  2623.  
  2624. Daß es der BavariaEventManager trotzdem macht, liegt daran, daß es
  2625. ein Verfahren gibt, das das trotzdem erlaubt. Der Programmstart
  2626. erfolgt beim Einsatz als ACC im SingleTOS über das AV-Protokoll von
  2627. Gemini. Damit das funktioniert, muß ein Desktop auf dem Rechner
  2628. installiert sein, der das Protokoll unterstützt, z.B. Gemini oder
  2629. Ease. Ansonsten geht ein Programmstart über das ACC schief.
  2630.  
  2631. Es gibt noch etwas:
  2632.  
  2633.                ACCs dürfen keinen Speicher anfordern!
  2634.  
  2635. Der BavariaEventManager fordert seinen Speicher bereits beim System-
  2636. start an. Daher sollte es zu keinen Problemen kommen. Verändern sich
  2637. aber die Dateien PROGRAMM.EVT oder SS.EVT, kann es vorkommen, daß
  2638. nochmal Speicher angefordert wird. Das kann unter Umständen zum
  2639. Absturz führen. Nach Veränderung der beiden Dateien ist daher ein
  2640. Neustart des Rechners sinnvoll.
  2641.  
  2642. Ganz zum Schluß möchte ich daher zur Vorsicht raten, wenn das Pro-
  2643. gramm als ACC in SingleTOS eingesetzt wird.
  2644.  
  2645.  
  2646. A.5  Programmereignis auf Singletasking-Betriebssystemen
  2647. ========================================================
  2648.  
  2649. Unter normalen TOS-Singletasking-Betriebssystemen kann das Pro-
  2650. grammereignis lediglich eine Programmebene auswerten.
  2651.  
  2652. Das heißt, wenn man ein Programm startet, das seinerseits wieder ein
  2653. Programm aufruft, wird der Start des zweiten Programms nicht vom
  2654. BavariaEventManager erkannt und ausgewertet.
  2655.  
  2656.  
  2657. A.6  Midi-Com Einbindung
  2658. ========================
  2659.  
  2660. Leider ist die Einbindung von MIDI-COM noch nicht ganz fehlerfrei. Es
  2661. gibt derzeit noch folgendes Problem:
  2662.  
  2663. Werden sehr schnell hintereinander zwei Nachrichten verschickt, wird
  2664. die zweite Nachricht verschluckt, aber nur, wenn MIDI-COM über einen
  2665. MIDI-Ring gestartet wird.
  2666.  
  2667.  
  2668.  
  2669. B  Beispiele für den Einsatz
  2670. ****************************
  2671.  
  2672. Wofür kann denn nun der BavariaEventManager alles eingesetzt werden?
  2673.  
  2674. Die nachfolgende Liste soll nur eine kleine Auswahl sein. Der Phan-
  2675. tasie der Anwender sind keine Grenzen gesetzt.
  2676.  
  2677.        ∙ Automatischer Maustausch
  2678.  
  2679.        ∙ Automatischer Catputz
  2680.  
  2681.        ∙ Erinnerungen an wichtige Geburtstage
  2682.  
  2683.        ∙ eingeschränkte Fernbedienung eines Rechners über MODEM
  2684.  
  2685.        ∙ Vereinfachung von notwendigen Mehrfachaufrufen von diversen
  2686.          Programmen, z.B. vor MausTausch immer Catrondo aufrufen.
  2687.  
  2688.        ∙ Fernbedienung eines Rechners über MIDI-COM
  2689.  
  2690.  
  2691.  
  2692. C  Definierte Feiertage
  2693. ***********************
  2694.  
  2695.  Folgende Feiertage sind im BavariaEventManager definiert:
  2696.  
  2697.  Neujahr:               bundeseinheitlich
  2698.  Heilige 3 Könige:      Bayern, Baden-Würthemberg, Sachsen-Anhalt
  2699.  Karfreitag:            bundeseinheitlich
  2700.  Ostermontag:           bundeseinheitlich
  2701.  Maifeiertag:           bundeseinheitlich
  2702.  Christi Himmelfahrt:   bundeseinheitlich
  2703.  Pfingstmontag:         bundeseinheitlich
  2704.  Fronleichnam:          Baden-Würthemberg
  2705.                          Bayern
  2706.                         Hessen
  2707.                         Nordrhein-Westfalen,
  2708.                         Rheinland-Pfalz
  2709.                          Saarland
  2710.                         Sachsen (katholisch)
  2711.                         Thürigen (katholisch)
  2712.  Friedensfest:          Bayern (Augsburg)
  2713.  Maria Himmelfahrt:     Bayern (katholisch)
  2714.                          Saarland
  2715.  Tag d.deutschen Einh.: bundeseinheitlich
  2716.  Reformationstag:       Brandenburg
  2717.                          Mecklenburg-Vorpommern
  2718.                          Sachsen (evangelisch)
  2719.                          Sachsen-Anhalt
  2720.                          Thüringen (evangelisch)
  2721.  Allerheiligen:         Baden-Würthemberg
  2722.                          Bayern
  2723.                          Saarland,
  2724.                         Nordrhein-Westfalen
  2725.                         Rheinland-Pfalz
  2726.                         Sachsen (katholisch)
  2727.                         Thürigen (katholisch)
  2728.  Buß und Bettag:        Sachsen
  2729.  1. Weihnachtsfeiertag: bundeseinheitlich
  2730.  2. Weihnachtsfeiertag: bundeseinheitlich
  2731.  
  2732.  
  2733.  
  2734. D  Haftungsausschluß und Warnung
  2735. ********************************
  2736.  
  2737. Das Programm wurde in diversen Konfigurationen getestet, dennoch kann
  2738. ich keine Haftung für eventuell durch dieses Programm verursachte
  2739. Schäden, gleich welcher Art, übernehmen.
  2740.  
  2741. Im Speziellen sei darauf hingewiesen, daß der Einsatz als ACC vor-
  2742. aussetzt, daß bei einem Programmstart als Aktion ein Desktop im
  2743. Speicher sein muß, der das AV_START-Protokoll versteht, um einen Pro-
  2744. grammstart durchzuführen (nur unter SingleTOS).
  2745.  
  2746. Desweitern kann es beim Verändern der Dateien PROGRAMM.EVT und SS.EVT
  2747. während des Einsatzes als ACC zu Problemen kommen. Bitte beachten Sie
  2748. dringend den Absatz "Bekannte Probleme"!
  2749.  
  2750.  
  2751.  
  2752. E  Autor
  2753. ********
  2754.  
  2755. Programmiert wurde der BavariaEventManager in Pure C 1.1.
  2756.  
  2757. Die RSC wurden in INTERFACE 2.32 erstellt.
  2758.  
  2759.                              ALADIN-Soft
  2760.  
  2761.   Anschrift: Michael Pieper   Mailadresse: MausNet: Michael Pieper @ A
  2762.              Flurstraße 5                           Michael Pieper @ LL
  2763.              86368 Gersthofen             Internet: michael@ghf.augusta.de
  2764.        Tel.: 0821 495633
  2765.  
  2766. Von Anrufen nach 22:00 Uhr bitte ich abzusehen, da mein Arbeitstag
  2767. relativ früh beginnt!
  2768.  
  2769. Nun hoffe ich, daß Ihnen das Programm gefällt. Für Anregungen und
  2770. Kritik habe ich jederzeit ein offenes Ohr.
  2771.  
  2772. ----------------------------------------------------------------------
  2773.  
  2774. Dokumentation des BavariaEventManager von Michael Pieper
  2775.  
  2776. Anpassung des Textes an UDO zur Erzeugung des ST-Guide-Hypertextes
  2777. und des ASCII-Textes:
  2778.  
  2779. Dietmar Hollenberg @ DO2
  2780.  
  2781.  
  2782.  
  2783.